Vue3.0 中v-model用法:

举个例子:  看到这,第一想到的是我这里要用v-model进行双向数据绑定

vue3.0中v-model的使用:

1. props: modelValue   2. emit ('updata: modelValue  ' ,参数)

父组件: 

<XtxNumbox label="数量" v-model="num" :min="1" :max="goodsData.inventory" />

const num = ref (1) 

子组件   

<template>
  <div class="xtx-numbox">
    <div class="label">{{label}}</div>
    <div class="numbox">
      <a href="javascript:;" @click="changeNum(-1)">-</a>
      <input type="text" readonly :value="modelValue">
      <a href="javascript:;" @click="changeNum(1)">+</a>
    </div>
  </div>
</template>
export default {
  name: 'XtxNumbox',
  props: {
    label: { type: String, default: '数量' },
    modelValue: { type: Number, default: 1 },
    min: { type: Number, default: 0 },
    max: { type: Number, default: 10000 }
  },
 setup (props, { emit }) {
    const changeNum = (step) => {
      let t = step + props.modelValue
      if (t < props.min || t > props.max) return

      emit('update:modelValue', t)
    }
    return { changeNum }
  }
}


 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值