2017-08-31 18 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