有很多例子是官網(wǎng)改的,大家可以去官網(wǎng)
http://vuejs.org.cn/guide/components.html#Props
這里每一個(gè)例子可以直接拷進(jìn)body運(yùn)行花嘶。
本系列為學(xué)習(xí)記錄笋籽,并非大神教學(xué)案例。
僅僅整理用法椭员,至于VUE的原理车海,設(shè)計(jì)模式等等暫不討論,文中如有不對(duì)隘击,還請(qǐng)大家?guī)兔χ刚讨ィf分感激。
下一篇會(huì)寫父子組件交互埋同。
這里是針對(duì)于vue1.0州叠,如果要學(xué)2.0,建議大家去看官方文檔
vue2.0 http://vuefe.cn/guide/
vue-router2.0https://router.vuejs.org/zh-cn/essentials/getting-started.html
第一種
//首先凶赁,別忘了引入vue.js
<div id="user_name_01"></div>
<script src="../node_modules/vue/dist/vue.js"></script>
<script>
var User_01 = Vue.extend({// 創(chuàng)建可復(fù)用的構(gòu)造器
template: '<p>{{firstName}} {{lastName}} age {{age}}</p>'
});
var user_01 = new User_01({ // 創(chuàng)建一個(gè) user 實(shí)例
data: {
firstName: 'yuxie',
lastName: 'weiliang',
age: 33
}
});
user_01.$mount('#user_name_01') // 掛載到元素上
</script>
// 頁面結(jié)果
<div>yuxie weiliang age 33</div>
第二種
data里面可以仿佛初始化的數(shù)據(jù)咧栗,然后new的時(shí)候,里面的數(shù)據(jù)會(huì)覆蓋之前的虱肄,可以當(dāng)做是默認(rèn)數(shù)據(jù)
<div id="user_name_02"></div>
<script>
//下面是另一種寫法,模版和數(shù)據(jù)扔一塊
var User_02 = Vue.extend({
template: '<p>{{firstName}} {{lastName}} age {{age}}</p>',
data: function(){
return {
firstName: 'yuxie',
lastName: 'weiliang',
age: 33
}
}
});
var user_02 = new User_02({data:{ age: 888888 }});//修改了age
user_02.$mount('#user_name_02')
</script>
// 頁面結(jié)果
<div>yuxie weiliang age 888888</div>
第三種致板,使用了html模版
//容器
<div id="user_name_03"></div>
//模版
<template id="children-template">
<p>{{firstName}} {{lastName}} age {{age}}</p>
</template>
//js
<script>
var User_03 = Vue.extend({// 構(gòu)造器
data: function(){
return {
firstName: 'yuxie',
lastName: 'weiliang',
age: 33
}
},
template: '#children-template'//獲取HTML模版
});
var user_03 = new User_03();// 實(shí)例化
user_03.$mount('#user_name_03') // 掛載到元素上
</script>
// 頁面結(jié)果
<div>yuxie weiliang age 33</div>