2.4 vue基础语法介绍

模板语法

  • {{msg}}

  • html赋值: v-html=“”

  • 绑定属性: v-bind:id=""

  • 使用表达式:{{ok?‘yes’:‘no’}}

  • 文本赋值:v-text=""

  • 指令 :v-if=""

  • 过滤器: {{message|captitalize}}和v-bind:id=“rawid |formatid”

Class 和 Style绑定

  • 对象语法:v-bind:class="{actice:isActive}"

    key-value ->active-isActive

  • 数组语法 v-bind:class="{acticeClass:errorClass}"

    
    

    data:{

    errorClass:“text-danger”

    }

    
    
  • style绑定-对象语法 :v-bind:style="{color:activeColor}"

条件渲染

  • v-if

  • v-else

  • v-else-if

  • v-show

  • v-cloak

vue事件处理器

  • v-on:click=“greet” 或者@:click=“greet”
  • 加修饰符 v-on:click.stop
  • v-on:keyup.enter还有很多修饰符

Vue组件

  • 全局组件和局部组件

  • 父子组件通讯-数据传递

  • Slot

    父组件调用子组件

    import Counter from './Counter'//子组件
    export default {
      name: 'HelloWorld',
      data () {
        return {
          msg: 'Welcome to Your Vue.js App'
        }
      },
      components:{
        Counter
      }
    }
     
    

    <Counter num="10"></Counter>

    父组件给子组件传递数据:(单向传递,父->子)

    子组件通过prop传递变量

    export default {
      props:["num"],
      data () {
        return {
          num:0
        }
      }
    

    如果想要子组件往父组件传递数据,

    1.父组件中,在子组件的引用中加入子组件的同名方法

     <Counter v-bind:num="num" v-on:increae="increament" v-on:decreae="decreament"></Counter>
    
    //vue实例中也加入同名方法
     methods:{
        increament(){
          this.num++;
        },
        decreament(){
          this.num--;
        },
      }
    

    2.在子组件方法中,调用emit来访问父组件中监听的方法

    methods: {
        increament(){
          this.$emit("increae");
        },
        decreament(){
          this.$emit("decreae");
        },
      },
    

    应用场景:导航栏,父子组件数据双向传递更推荐使用vuex

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值