- vue组件:
1.1 什么是vue组件?组件的出现,就是为了拆分Vue实现的代码量的,能够让我们以不同的组件,来划分不同的功能模块,将来我们需要什么样的功能,就可以去调用对应的组件即可; 1.2 组件化和模块化的不同 模块化:是从代码逻辑的角度进行划分的;方便代码分层开发,保证每个功能模块的职能单一; 组件化:是从UI界面的角度
2.全局组件定义的三种方式: 2.1 使用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>Document</title>
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
<div id="app">
<login1></login1>
</div>
<script>
var login = Vue.extend({
template: "<h1>登录</h1>",
});
Vue.component("login1", login);
let vm = new Vue({
el: "#app",
data: {},
methods: {},
});
</script>
</body>
</html>
2.2 直接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>Document</title>
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
<div id="app">
<register></register>
</div>
<script>
Vue.component("register", {
template: "<h1>注册</h1>",
});
let vm = new Vue({
el: "#app",
data: {},
methods: {},
});
</script>
</body>
</html>
第三种
<!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>Document</title>
<script src="./js/vue.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
<div id="app">
<mes></mes>
</div>
<script id="tmpl" type="x-template">
<div> <a href="#">登录</a> </div>
</script>
<script>
Vue.component("mes", {
template: "#tmpl",
});
let vm = new Vue({
el: "#app",
data: {},
methods: {},
});
</script>
</body>
</html>
3.组件中展示数据和响应事件
|