vue基础语法以及父子组件如何相互传值
来源:互联网 发布:java要学到什么程度 编辑:程序博客网 时间:2024/06/05 17:23
vue模板引擎语法,关注数据层面
- Mustache语法:{{msg}} 主要是用date控制
- html赋值:v-html=”“
- 绑定属性:v-bind:id=”“
- 使用表达式:{OK?”yes”:”NO”}
- 文本赋值:v-text=”“
- 指令:v-if=”“
- 过滤器:{{message|capitalize}}和v-bind:id=”rawId|formatId”
class和style绑定
- 对象语法:v-bind:class=”{active:isActive,’text-danger’:hasError}”
- 数组语法:
data:{activeClass:"active",errorClass:"text-danger"}
- style绑定-对象语法
v-bind:style="{color:activeColor,fontSize +'px'}" //activeColor和fontSize在date里面定义变量
- 条件渲染
v-if
v-else
v-eles-if
v-show(和v-if的区别是v-if判断是不会加载到页面,而v-show是加载到页面只是不显示)
v-cloak
- vue事件处理器
v-on:click=”greet” 或许@click=”greet”
v-on:click.stop 阻止冒泡
v-on:click.stop.prevent阻止默认事件(a标签点击失灵)
v-on:click.self 给绑定对象绑定事件,对子元素是没有效果的
v-on:click.once 只能绑定一次,例如”下一步”,只能生效一次。
v-on:keyup.enter/tab/delete/esc/space/up/down/left/right
- vue组件
全局组件和局部组件
父子组件通讯-数据传递 (vue允许:父给子传递数据用到plp,不允许:不能给父传递数据–可以使用Emit来操作)
VUE主张单向数据流,那怎么做到子给父传值呢
父给子传值案例:
APP.vue(父)注册子组件Counter,并定义num值,给子组件传值<template> <div> <Counter num="10"></Counter> </div></template><script> import Counter from './components/first' export default { data(){ return {} }, components: { Counter } }</script>
first.vue(子)接收父传的值,使用到props接收值。<template> <div> <button @click="increment">+</button> <button @click="decrement">-</button> <p><span>{{num}}</span></p> </div></template><script> export default { props: ["num"], data () { return { num: 0, } }, methods: { increment(){ this.num++; }, decrement(){ this.num--; } } }</script>
子给父传值案例–需要通过emit操作:
APP.vue(父)在注册子组件Counter时自定义两个事件(incre和decre),并在增加increment和decrement的方法,说道底就是,父方法创建方法让子组件调用改变<template> <div> <Counter v-bind:num="num" v-on:incre="increment" v-on:decre="decrement"></Counter> <p>父:{{num}}</p> </div></template><script> import Counter from './components/first' export default { data(){ return { //给父默认为10 num:10 } }, components: { Counter }, methods:{ increment(){ this.num++; }, decrement(){ this.num--; } } }</script>
//子组件使用$emit调用父组件(注意是事件名)<template> <div> <button @click="increment">+</button> <button @click="decrement">-</button> <p><span>{{num}}</span></p> </div></template><script> export default { props: ["num"], data () { return { num: 0 } }, methods: { increment(){ this.$emit('incre'); }, decrement(){ this.$emit('decre'); } } }</script>
阅读全文
0 0
- vue基础语法以及父子组件如何相互传值
- Vue父子组件传值
- vue-父子组件间的相互传值与传址
- vue如何实现父子组件通信,以及非父子组件通信(待看)
- vue父子组件互相传值
- Vue.js父子组件和非父子组件间的传值通信
- vue2.0父子组件以及非父子组件如何通信
- vue2.0父子组件以及非父子组件如何通信
- vue2.0父子组件以及非父子组件如何通信
- vue2.0父子组件以及非父子组件如何通信
- Vue不同组件之间相互传值
- vue父子组件&继承组件的生命周期以及应用
- vue2.0 .vue文件非父子组件传值问题
- vue父子传值
- Vue通过ref父子组件拿值
- vue 父子组件通信
- vue父子组件通信
- Vue父子组件通信
- 动态规划专栏(3)-背包问题(1)
- web开发之防止表单重复提交
- 第一章 第三课 准备和了解Scratch环境
- QT定时器
- 设计模式--职责链与组合
- vue基础语法以及父子组件如何相互传值
- Flying to the Mars
- mmap
- Android当中的MVP模式(四)插曲-封装OkHttp
- Hibernate入门(三)
- resnet-avgpooling 踩的坑 python 调试 debug+多处设置断点 及 枚举:enumerate()
- 【py-faster-rcnn】【训练自己数据】需要修改的参数小记
- 每日练习2017-11-02
- Android当中的MVP模式(五)封装之后的OkHttp工具在Model层