2017-08-31 58 views
0

我是新來。該組件comp1似乎不起作用。VueJs成分不確定

HTML

<div id="example-2"> 
    <comp1></comp1> 
</div> 

腳本

var data1={selected: null, items:["degradant", "impurity"]}; 

Vue.component('comp1, { 
    template:'<select v-model="selected"> 
      <option disabled value="">Please select</option> 
      <option v-for="item in items" :value="item">{{item}}</option> 
      </select>', 
    data: function(){ 
    return data1 
    }    
}); 

new Vue({ 
    el: '#example-2' 
}) 
+0

是否使用單引號'''或'反引號周圍分量模板?單引號不起作用。 – Bert

回答

1

你的組件應該是這樣的:

Vue.component('comp1', { 
    template:`<select v-model="selected"> 
      <option disabled value="">Please select</option> 
      <option v-for="item in items" :value="item">{{item}}</option> 
      </select>`, 
    data: function(){ 
    return data1 
    }    
}); 

你在這裏缺少一個單引號:'comp1, {,你必須用反引號包圍多行模板,`。

console.clear() 
 

 
var data1={selected: null, items:["degradant", "impurity"]}; 
 

 
Vue.component('comp1', { 
 
    template:`<select v-model="selected"> 
 
      <option disabled value="">Please select</option> 
 
      <option v-for="item in items" :value="item">{{item}}</option> 
 
      </select>`, 
 
    data: function(){ 
 
    return data1 
 
    }    
 
}); 
 

 
new Vue({ 
 
    el: '#example-2' 
 
})
<script src="https://unpkg.com/[email protected]"></script> 
 
<div id="example-2"> 
 
    <comp1></comp1> 
 
</div>

+0

非常感謝!倒退是不可思議的! – user1830108