Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Vue.js工作流从Vue.js 1到2_Javascript_Vue.js_Vuejs2_Vue Component - Fatal编程技术网

Javascript Vue.js工作流从Vue.js 1到2

Javascript Vue.js工作流从Vue.js 1到2,javascript,vue.js,vuejs2,vue-component,Javascript,Vue.js,Vuejs2,Vue Component,当Vue.js 1面世时,我已经学习了laracasts的Vue.js课程,我曾经做过这样的事情: import Comments from './components/Comments.vue'; import Upload from './components/Upload.vue'; new Vue({ el: 'body', components: { Comments, Upload, Prev

当Vue.js 1面世时,我已经学习了laracasts的Vue.js课程,我曾经做过这样的事情:

import Comments from './components/Comments.vue';
import Upload from './components/Upload.vue';

new Vue({
    el: 'body',

    components: {
            Comments,
            Upload,
            Preview,
            Algolia,
        },

    etc,
});
这使我能够在我的应用程序中“喷洒”组件。但我无法再绑定到正文,因为Vue会替换内容,并会抛出一条错误消息,说明不应绑定到正文或html

我在Vue.js 2上了几节课,但如何以Vue.js 2的方式复制此工作流?我喜欢只绑定到主体,并可以选择将组件与自定义标记放在一起。

我们使用相同的“喷洒”方法,我们所做的只是将其从
'body'
更改为
'app'

我们还在其中添加了一个包装元素,该元素的id基本上是复制
body
。()


...
我们使用Jinja2作为模板语言,并发现当一个变量在Jinja2中无法解析时,它会像我认为Vue尝试使用它一样存储Vue


我相信它会在初始渲染后将
#app
中的所有内容都转换为虚拟dom。这不会影响我所看到的任何东西,因此您可以很高兴地在
主体中添加包装类,并将其与Vue 1一样使用,使其
并绑定到
#app
?@ceejayoz这不会清除整个应用包装吗?你本可以有效地避开警告,但我的整个身体不是都消失了吗?@Stephan-v不!出于同样的原因,
body
上的绑定目前无法清除整个应用程序。Tbh Vue 2不像Vue 1那样通过应用程序处理组件的喷洒,但它在大多数情况下都有效。我使用的是运行时版本,而运行时版本实际上不能在html中使用模板标记。我想我已经解决了。明白了,我们也使用运行时版本,但在webpack后面使用
vue loader
vue模板编译器
.vue
文件转换为渲染函数()和()@DabGamble,无论何时使用
$mount()
我立即得到了一个独立的构建,尽管看起来你也在做同样的事情。我不明白你为什么只需查看main.js文件就可以获得运行时版本。@Stephan-v如果你查看第二个链接,即网页包配置,你可以看到允许它的vue别名
“vue”:“vue/dist/vue”
在你的网页包配置中指向独立版本。这是一个甚至不打算用于网页包的版本,因为它应该是
vue/dist/vue.common.js
,所以很抱歉,我仍然不知道从哪里获得运行时版本。很抱歉继续抱怨,但我很想弄明白这一点:P
<body>
  <div id="app">
    ...
  </div>
</body>