Vue-组件
组件
组件是可复用的 Vue 实例,主要用于开发中 具有相同特征不同数据的模块 把它集成为一个组件 供重复利用
注册的组件不要跟系统标签同名
2.局部组件
一个vm实例可以有多个局部组件,但是只能供当前vm实例使用
组件引用的三种方式
new Vue({
el: '#app',
data: {},
methods: {},
components:{
Box:{
template:`<div>
<h1>6666</h1>
<p>hello</p>
</div>`
},
Nav1:{
template:`<div>
<div>按钮1</div>
<div>按钮2</div>
<div>按钮3</div>
<div>按钮4</div>
</div>`
},
MyBox:{
template:`<h1>666</h1>`
}
},
filters:{},
watch:{},
computed:{},
directives:{},
beforeCreate(){},
created(){},
beforeMount(){},
mounted(){},
beforeUpdate(){},
updated(){},
beforeDestroy(){},
destroyed(){}
})
<script>
let a1 = {
template: `<div>
<h1>6666</h1>
<p>hello</p>
</div>`
}
let a2 = {
template: `<div>
<div>按钮1</div>
<div>按钮2</div>
<div>按钮3</div>
<div>按钮4</div>
</div>`
}
let a3 = {
template: `<h1>666</h1>`
}
var vm = new Vue({
el: '#app',
data: {},
methods: {},
components: {
//注册组件
Box: a1,
Nav1: a2,
MyBox: a3
},
filters: {},
watch: {},
computed: {},
directives: {},
beforeCreate() {},
created() {},
beforeMount() {},
mounted() {},
beforeUpdate() {},
updated() {},
beforeDestroy() {},
destroyed() {}
})
</script>
<script type="module">
//1.导入
import Box from "./componnets/Box.js"
import Nav1 from "./componnets/Nav1.js"
import MyBox from "./componnets/MyBox.js"
var vm = new Vue({
el: '#app',
data: {},
methods: {},
components: {
//2.注册组件
Box,
Nav1,
MyBox,
Box2:{
template:`<div>
<h1>666-box2</h1>
<p @click="fn">{{msg}}</p>
</div>`,
data:function(){
return {msg:"msg66666"}
},
methods:{
fn(){console.log("Box2组件的方法")}
},
filters: {},
watch: {},
computed: {},
directives: {},
beforeCreate() {},
created() {},
beforeMount() {},
mounted() {},
beforeUpdate() {},
updated() {},
beforeDestroy() {},
destroyed() {}
}
},
filters: {},
watch: {},
computed: {},
directives: {},
beforeCreate() {},
created() {},
beforeMount() {},
mounted() {},
beforeUpdate() {},
updated() {},
beforeDestroy() {},
destroyed() {}
})
</script>
本文来自博客园,作者:前端小白银,转载请注明原文链接:https://www.cnblogs.com/forever-ljf/p/16660137.html

浙公网安备 33010602011771号