Vue 组件未显示/更新

Ved*_*jić 4 laravel vue.js vue-component vuejs2

我在 Laravel 5.4 中工作,Vue 组件没有显示/更新。我开始一个新项目并在 web.php 中创建一个路由 /chat

这是chat.blade.php

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <link rel="stylesheet" type="text/css" href="css/app.css">
</head>
<body>
<div id="app">
<example></example>
<chat></chat>
</div>

<script type="text/javascript">
window.Laravel = { csrfToken: '{{ csrf_token() }}' };
</script>
<script src="js/app.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

这是 app.js

require('./bootstrap');
Vue.component('example', require('./components/Example.vue'));
Vue.component('chat', require('./components/Chat.vue'));

const app = new Vue({
el: '#app'
});
Run Code Online (Sandbox Code Playgroud)

Example 和 Chat 组件是一些基本模板,我没有传递任何数据,只是纯文本。

Chat.vue

<template lang="html">
<div id="content">
    <h1>Messages</h1>
    <p>Message text</p>
    <small>Hiii</small>
</div>
 </template>

<script>
export default {
}
</script>
Run Code Online (Sandbox Code Playgroud)

当我第一次运行 php artisan 时,一切正常。我尝试在 Chat.vue 中编辑一些文本,例如将 'Hiiii' 更改为 Hello,当我重新加载页面时它不会改变,它只是保持不变。我尝试重新启动电脑,再次运行 php artisan,任何我能想到的。我尝试将一些 Vue 代码直接放在 chat.blade.php 中,然后它起作用了。看起来它没有检测 app.js 和组件中的变化。仅供参考,我什至删除了 Example.vue 组件。它仍然出现在页面上。

Jor*_*ena 7

解决这个问题的最好方法是更新 npm,因为它会更新所有包并安装丢失的包,结果你将有 laravel mix 编译你的资产;现在你不能这样做。

npm update
Run Code Online (Sandbox Code Playgroud)

对于某些人来说,可以使用更简单的解决方案,即运行watch-pol命令

npm run watch-poll
Run Code Online (Sandbox Code Playgroud)