5-vue-cli创建vue项目
# 1 计算属性
computed:写函数,函数名就可以当变量使用
以后页面再刷新,只有该函数内部使用值变化,函数才重新运算
# 组件
-局部和全局
-以后每一个组件就是一个 xx.vue
-自己的html,css,js
# 组件间通信
-自定义属性:父传子
-自定义事件:子传父
this.$emit(事件名,参数)
-ref属性:
-普通标签
-放在组件上
this.$refs.名字 # 组件对象
# 动态组件
<keep-alive>
<component :is="who"></component>
</keep-alive>
1 插槽
# 在定义组件是,预留一个地方使用标签 <slot></slot> 占位
# 以后在父组件中的子组件的标签内部写 内容,html内容 就会被替换到<slot></slot>中
1.1具名插槽
# 一个不带 name 的 <slot> 出口会带有隐含的名字“default”,我们可以根据需求给插槽取个名字
<slot name="Header"></slot>
<div slot="Header">
<a href="https://www.baidu.com">点我看帅哥</a>
</div>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="vue.js"></script>
</head>
<div id="app">
<children>
<div slot="End">
高清无码
</div>
<div><button @click="handclick">点我要你好看</button></div>
<div slot="Header">
<a href="https://www.baidu.com">点我看帅哥</a>
</div>
</children>
</div>
<body>
<script>
var vm = new Vue({
el:'#app',
data:{},
methods:{
handclick(){
alert('123')
}
},
components:{
'children':{
template:`<div>
<slot name="Header"></slot>
<button>前进</button>
{{name}}
<slot></slot>
<button>后退</button>
<slot name="End"></slot>
</div>`,
data(){
return {
name:'致命诱惑'
}
}
}}
})