javascript - Laravel 和 Vue 在 Blade 中从组件 1 向组件 2 发送数据
问题描述
不知道这是否可能。
但这里是上下文。
我有一个具有会员状态(活动/非活动)的左侧导航栏。当支付网关收到付款时,会通过 Paddle(Laravel Paddle API)发送一个 webhook。
在 webhook 期间,我将用户重定向到感谢页面(带有 vue 组件的刀片)。
应用程序.js
let Event = new Vue();
window.Event = Event;
导航栏.blade.php
<componentOne></componentOne>
<componentTwo></componentTwo>
组件一
mounted(){
Event.$emit("updateStatus");
},
组件二:
mounted() {
this.fetchStatus();
Event.$on("updateStatus", () => {
setTimeout(() => {
console.log('testing!');
}, 4000);
})
},
我希望即使在组件 2 中也能捕捉到这一点,但什么也没有......
知道我做错了什么吗?这是我第一次尝试在刀片中进行此操作。
我知道这两个组件都在一个 PHP 页面中,但我希望 Vue 可能仍然能够以某种方式通过 app.js 进行通信。
谢谢!
解决方案
可能是一种竞争条件,其中 componentOne 在安装 componentTwo 之前发出事件,因此它还没有监听。尝试将您的 $on 调用移至 created() 或什至在 $emit 上设置超时。不过我可能误解了你的流程。
推荐阅读
- java - 为什么@Requestparam 返回null,但值已填充?
- typescript - 根据 Typescript 中的字符串推断类型
- hibernate - Hibernate 将时间 Date 作为 Timestamp 与本机查询绑定
- linux - `find` 命令核心转储到包含太多文件的目录中
- javascript - 如何在点击反应时显示数据
- azure - 转换为 Azure Webjob 的控制台应用程序无法写入 app.config 中提到的文件位置
- excel - VBA Excel用Excel单元格值替换Word文本
- php - 在 WooCommerce 中请求类别时获取“per_page 必须介于 1(含)和 100(含)之间”
- javascript - 将 Promise 与 resolve 并拒绝作为财产是否是一种反模式?为什么?
- flutter - 颤振版本解决失败