vue第二天学习打卡
知道组件化开发思想
组件的注册
vue调式工具
组件数据交互
组件插槽
组件化开发
1--标准
2--分治
3--重用
4--组合
组件注册
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="../vue.js"></script>
<title>Document</title>
</head>
<body>
<div id="app">
<!-- 调用组件 -->
<button-counter></button-counter>
<button-counter></button-counter>
</div>
<script>
// 可以重复使用 并且相互不影响
// 注册组件 直接调用组件的名称就可以
Vue.component('button-counter', {
// data写成函数
data: function() {
return {
count: 0
}
},
// 模板 写入标签展示样式 加 处理事件
// '<utton @click="count++">点击了{{count}}次</button>
template: '<button @click="hande">点击了{{count}}次</button>',
methods: {
hande: function() {
this.count += 2
}
}
})
var vm = new Vue({
el: '#app',
data: {
}
})
</script>
</body>
</html>
组件可以重用 且数据互不影响
注册组件注意事项
1--- data必须是函数
函数会形成闭包 多次调用 数据不会被影响
2---调用组件需要放到指定的容器
3---组件模板可以是模板字符串
局部组件的注册
var HelloWord = {
data: function() {
return {
msg: '14'
}
},
template: '<div>{{msg}}</div>'
};
var tom = {
data: function() {
return {
msg: '13'
}
},
template: '<div>{{msg}}</div>'
};
var comm = {
data: function() {
return {
msg: '12'
}
},
template: '<div>{{msg}}</div>'
};
var vm = new Vue({
el: '#app',
components: {
// 局部组件的名称 后面是组件
'hello-word': HelloWord,
'hello-tom': tom,
'hello-comm': comm
},
data: {
}
})