Livewire @entangle
2021-05-13
2562
我是 Livewire 新手,有一个问题。
在我的 Livewire blade 中,我有一个 JS 函数,它调用一个组件方法来更新 $this->questions。
function QuestionBatchRequest() {
Livewire.emit('moreQuestions');
this.dispatchEvent(new Event('moreQuestions'));
}
这有效,因为我可以输出到输入框并查看数据变化。
然后我有
document.addEventListener('livewire:load', () => {
window.livewire.on('QuestionBatchListener', () => {
let data = @entangle('questions');
myUnityInstance.SendMessage("JS-Unity", "InjectQuizData", data);
});
});
如何将更新的 $this->questions 直接获取到我的 JS 变量中?
这是我组件中的方法
$this->questions = json_encode($data, JSON_UNESCAPED_SLASHES);
$this->emit('QuestionBatchListener');
此函数是从同一页面上的 Unity 游戏中调用的。初始问题集在页面加载时收到并且运行良好。
1个回答
好的,所以我将
let data = @entangle('questions');
更改为
let data = @this.get('questions');
...
user3467896
2021-05-13