Vue js不渲染自定义组件
问题描述:
我正在使用这个 - http://monterail.github.io/vue-multiselect/ 用vue和该库创建一个js文件,但其他代码只在脚本标记中。组件已注册。我把一些数据,并谈到空Vue js不渲染自定义组件
这只是从代码的“入门”,没什么特别的。控制台中没有任何错误,只是空的节点。我用这另一个组件内部进行inline-template
:最重要的事情(UPD:即使在根相同)
这就是文件是如何用的WebPack创建
window.Vue = require('vue');
window.Multiselect = require('vue-multiselect');
然后我就包括编译文件并添加脚本
<script>
Vue.component('multiselect', Multiselect);
new Vue({
el: '#vue-app',
data: {
options: ['one', 'two'],
model: ''
},
created: function() {},
computed: {},
methods: {}
});
</script>
答
的'vue-multiselect'
模块,就是要引进像这样:
import Multiselect from 'vue-multiselect'
使用import
,分配Multiselect
是模块的默认出口的价值。
但是,因为您使用require
,因此您将Multiselect
指定为模块对象,其中default
属性包含组件的配置选项。默认导出未被解析,并且您尝试访问的值为Multiselect.default
。
您应该使用import
,或访问default
属性定义'multiselect'
组件时:
Vue.component('multiselect', Multiselect.default);
没有足够的上下文。请显示更多组件代码 – thanksd
@thanksd我做到了。 – Fortael
尝试'Vue.component('multiselect',Multiselect.default)'代替 – thanksd