一、文件目錄結構html
Vue.js官網下載vue
Vue2.0組件定義,自行編寫測試
二、編寫文件this
以下,spa
三、總體思路component
定義子組件——註冊組件——模板編寫——引用模板——實例化htm
訪問方式:直接訪問html文件。blog
源代碼:生命週期
<!DOCTYPE html>ip
<html lang="en">
<head>
<meta charset="UTF-8">
<title>vue2.0組件屬性</title>
<script src="./vue.js"></script>
<script>
var Home={//一、定義子組件
template:'#aaa' //四、套用模板
};
Vue.component('home-test',Home); //二、註冊組件
window.onload=function(){
new Vue({
el:'#box',
data:{
msg: 'welcome vue2.0'
}
});
};
</script>
</head>
<body>
<template id="aaa">
<!--三、template模板,下面只容許只有一個標籤屬性-->
<div>
<h3>我是第一個組件</h3>
<strong>加粗標籤屬性</strong>
</div>
</template>
<div id="box">
<!--五、子組件實例化,引用-->
<home-test></home-test>
{{ msg }}
</div>
</body>
</html>
自此,組件屬性介紹完成。
四、組件聲明週期介紹
beforeCreate 組件實例剛剛被建立,屬性都沒有
created 實例已經建立完成,屬性已經綁定
beforeMount 模板編譯以前
mounted 模板編譯以後
beforeUpdate 組件更新以前
updated 組件更新完畢
beforeDestroy 組件銷燬前
destroyed 組件銷燬後
五、源代碼
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>vue2.0生命週期</title>
<script src="./vue.js"></script>
<script>
window.onload=function(){
new Vue({
el:'#box',
data:{
msg: 'welcome vue2.0'
},
methods: {
update(){this.msg='數據已更新'},
destroy(){this.$destroy();}
},
beforeCreate(){console.log('組件實例剛剛被建立');},
created(){console.log('實例已經建立完成');},
beforeMount(){console.log('模板編譯以前');},
mounted(){console.log('模板編譯以後');},
beforeUpdate(){console.log('組件更新以前');},
updated(){console.log('組件更新以後');},
beforeDestroy(){console.log('組件銷燬以前');},
destroyed(){console.log('組件銷燬以後');}
});
};
</script>
</head>
<body>
<div id="box">
<input type="button" value="更新數據" @click="update">
<input type="button" value="銷燬數據" @click="destroy">
{{ msg }}
</div>
</body>
</html>
界面訪問測試,查看console輸出。
自此,vue生命週期介紹完畢。