vue笔记(二)
Vue创建组件
- 全局注册组件
- 局部注册组件
- 单文件注册组件
一般注册组件的步骤分为三步:创建组件构造器、注册组件和使用组件。
Vue.extend()方法创建组件构造器
Vue.component()方法注册组件
<!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">
<title>案例分析</title>
<style>
.box {
width: 100%;
}
</style>
</head>
<body>
<div id="app">
<div class="box">
<one-component></one-component>
</div>
</div>
<script src="./vue.js"></script>
<script>
// 1.首先,创建一个组件构造器
var oneComponent = Vue.extend({
template: '<div>这是一个组件</div>'
})
// 2.注册组件,组件的HTML标签为<one-component>
Vue.component('one-component', oneComponent)
new Vue({
el: '#app',
data: {
},
methods: {
}
})
</script>
</body>
</html>
以上注册组件的方法过于繁琐,一般在开发中不会这样写下面的方法是注册语法的简写。
全局注册组件
Vue.component('one-component', {
template: '<div>这是一个组件</div>'
})
Vue.component()的第一个参数是标签名称,第二个参数是一个对象,对象里是template的定义,template下面也可以定义常用的data、methods等属性和方法,用来实现一些交互。
局部注册组件
我们可以以不用在new Vue外面进行注册,直接在components中定义组件,注册的方式直接以对象的形式进行注册,对象的名称就是标签的名称,名称中不能出现符号,否则会报错。
new Vue({
el: '#app',
data: {
},
methods: {
},
components: {
oneComponent: {
template: '<div>这是一个组件</div>'
}
}
单文件注册组件
页面中注册的组件过多时,会让页面看起来很臃肿,所以,我们可以把组件分出去,独立写成一个文件,然后在需要用到的地方引进来。
创建demo.vue
<template>
<div>
{{message}}
</div>
</template>
<script>
export default {
data() {
return {
message:'这是一个组件'
};
},
};
</script>
<style>
</style>
导入demo.vue,然后使用components
注册组件,最后在template
中使用组件
App.vue
<template>
<demo></demo>
</template>
<script>
import Demo from './Demo';
export default {
data() {
return {
message:'这是一个组件'
};
},
components: {
Demo,
}
}
</script>
发表评论 (审核通过后显示评论):