laravel-nova - Laravel Nova 工具 - 向 Vue 发送元数据
问题描述
我正在为Laravel Nova 2.0创建一个工具
在我的Tool
我想向 Vue 组件发送一个东西列表:
在我的工具的 PHPsrc
中,我有一个生成“元”的函数,如此处的文档中所建议:
public function stuff() {
$stuff = [];
...
return $this->withMeta(['stuff' => $stuff]);
}
在我NovaServiceProvider.php
的实例中,我实例化了该工具并调用了元函数。IE
public function tools()
{
return [
(new Tool())->stuff(),
];
}
但是,没有任何东西传递给 Tool.vue 组件,(我花了一些时间检查它!)即:
mounted() {
console.log(this.stuff); // undefined
},
此处讨论了问题:https ://github.com/laravel/nova-issues/issues/761 ,但请注意我使用的是 aTool
而不是 aResourceTool
或 a Card
。
这是工具的错误,还是我做错了什么?有解决方法吗?
解决方案
我还没有尝试创建自定义工具,但是对于自定义字段,您可以使用以下方法获取元数据:
mounted() {
console.log(this.field.stuff);
},
如果您遇到类似问题的问题,我建议以 json 格式在控制台中打印类的内容,这样可以更轻松地解决问题
mounted() {
console.log(JSON.stringify(this));
},
虽然我认为这不是问题,但您可以尝试将您的 stuff() 函数修改为:
public function stuff()
{
$stuff = [];
$this->withMeta(['stuff' => $stuff]);
return $this;
}
推荐阅读
- php - 在 Laravel 中使用图像将多重数据插入数据库
- r - R:如何将日期存储在 data.frame 中并防止 R 将其转换为数字?
- python - 数据帧性能问题与排列
- linux-kernel - 构建内核模块 do_softirq() 未定义
- docker - 由于“未经授权的访问”错误,无法将 Docker 映像推送到 Heroku 存储库
- python-3.x - Python基础理解
- swift - 可编码一致性结构的 @Published 数组的可编码一致性
- java - 在 Java 中使用 AES-256-ECB 解密
- sas - 使proc列表的输出垂直?
- c++ - pyconfig.h 致命错误 'io.h' 找不到文件