jquery - 为什么在浏览器的视图(刀片)文件中没有更新触发的推送器数据?
问题描述
我有3 个 div 的刀片文件
欢迎.blade.php
<div id="id1">0</div>
<div id="id2">0</div>
<div id="id3">0</div>
<script>
//pusher
var pusher = new Pusher('xxxxxxxxxxxx', {
cluster: 'eu',
encrypted: true
});
// Subscribe to the channel we specified in our Laravel Event
var channel = pusher.subscribe('my-channel');
// Binding a function to a Event
channel.bind('App\\Events\\UpdatedTime', function(data){
target = data.id;
console.log(data);
value = data.value;
var div1 = document.getElementById(target);
div1.innerHTML =value;
});
</script>
div 中的0
应替换为由推送器中的事件触发的值。
当我在 URL 中传递 Id 时,我可以在调试控制台中的推送器中触发事件,如下所示。( http://project.test/id1 )
在我的控制器中:
public function getTime($divId)
{
// pusher
$options = array(
'cluster' => 'ap3',
'useTLS' => true
);
$pusher = new Pusher(
env('PUSHER_APP_KEY'),
env('PUSHER_APP_SECRET'),
env('PUSHER_APP_ID'),
$options
);
//var_dump($pusher);
$pusher->trigger('my-channel', 'UpdatedTime', ['id' => $divId, 'value' => 1511);
return view('welcome');
}
事件文件
public $id, $value;
public function __construct($id, $value)
{
$this->id = $id;
$this->value = $value;
}
public function broadcastOn()
{
return new Channel('my-channel');
}
路线/web.php
Route::get('/getTime/{id}', 'App\Http\Controllers\TimeController@getTime');
在浏览器中传递URL后, http://project.test/id2
我只能看到
0
0
0
在浏览器中,实际上应该在浏览器中。
0
1511
0
如何在浏览器中获取触发的事件值?有人可以帮忙吗?
谢谢
解决方案
推荐阅读
- python - 打印出下拉列表元素出现在一个大段落中,而不是单独的行中
- integromat - 自定义 Integromat 应用程序中的文件接口
- c++ - LAPACKE_dsyevd 返回错误的特征向量
- swift - URLComponents 在“路径”部分失败
- javascript - 在 react-slick 轮播中添加全屏背景
- javascript - 将信息从 Cookie 传递到漂移自定义属性
- javascript - 如何处理ngFor中输入类型的动态正则表达式值?
- c# - WCF项目中的rabbitMQ返回错误,但它在同一台PC的同一个控制台项目中工作
- python - 如果字典数组由“nan”组成,则不返回任何条目
- codeigniter-3 - Google_Service_Exception gmail api php 的问题