代码
定义局部组件,和模板抽取的两种方式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<title>vueTest</title>
<style type="text/css">
* {
margin: 0px;
padding: 0px;
}
</style>
</head>
<body>
<div id="app">
<myheader></myheader>
</div>
<div id="app2">
<myheader></myheader>
</div>
<script type="text/x-template" id="mytemp">
<div>
<h3>商品名:{{name}}</h3>
<h3>价格:{{price}}</h3>
<h3>类别:{{goodsType}}</h3>
<h3>描述:{{msg}}</h3>
</div>
</script>
<template type="text/x-template" id="mytemp2">
<div>
<h3>商品名:{{name}}</h3>
<h3>价格:{{price}}</h3>
<h3>类别:{{goodsType}}</h3>
<h3>描述:{{msg}}</h3>
</div>
</template>
<script type="text/javascript">
var app=new Vue({
components:{
"myheader":{
template:"#mytemp2",
data:function (){
return{
name:"联想小新",
price:12.00,
goodsType:"A类",
msg:"hello"
}
}
}
},
el:"#app",
data:{
goodsType:"A类"
}
});
</script>
</body>
</html>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/a1240a4bd5721b5bd352b8b297c25118.png)
定义全局组件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<title>vueTest</title>
<style type="text/css">
* {
margin: 0px;
padding: 0px;
}
</style>
</head>
<body>
<div id="app">
<myheader></myheader>
</div>
<hr>
<div id="app2">
<myheader></myheader>
</div>
<script type="text/javascript">
Vue.component("myheader",{
template:`<div>
<h3>商品名:{{name}}</h3>
<h3>价格:{{price}}</h3>
<h3>类别:{{goodsType}}</h3>
<h3>描述:{{msg}}</h3>
</div>`,
data:function (){
return{
name:"联想小新",
price:12.00,
goodsType:"A类",
msg:"hello"
}
}
});
var app=new Vue({
el:"#app",
});
var app2=new Vue({
el:"#app2",
});
</script>
</body>
</html>
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/de4482d8a0392f7af3101e5ada944e45.png)