2017-06-06 210 views
3

我正在使用這個 - http://monterail.github.io/vue-multiselect/ 用vue和該庫創建一個js文件,但其他代碼只在腳本標記中。組件已註冊。我把一些數據,並談到空Vue js不渲染自定義組件

enter image description here

這只是從代碼的「入門」,沒什麼特別的。控制檯中沒有任何錯誤,只是空的節點。我用這另一個組件內部進行inline-template:最重要的事情(UPD:即使在根相同)

enter image description here

這就是文件是如何用的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> 
+0

沒有足夠的上下文。請顯示更多組件代碼 – thanksd

+0

@thanksd我做到了。 – Fortael

+0

嘗試'Vue.component('multiselect',Multiselect.default)'代替 – thanksd

回答

2

'vue-multiselect'模塊,就是要引進像這樣:

import Multiselect from 'vue-multiselect' 

使用import,分配Multiselect是模塊的默認出口的價值。

但是,因爲您使用require,因此您將Multiselect指定爲模塊對象,其中default屬性包含組件的配置選項。默認導出未被解析,並且您嘗試訪問的值爲Multiselect.default

您應該使用import,或訪問default屬性定義'multiselect'組件時:

Vue.component('multiselect', Multiselect.default);