v模型中的VueJS反转值

jv2fixgn  于 2023-03-03  发布在  Vue.js
关注(0)|答案(4)|浏览(185)

这里我的代码:

<input
   v-model="comb.inactive"
   type="checkbox"
   @click="setInactive(comb.id_base_product_combination)"
>

我需要应用反向的梳。在v型上不活动。
这里我尝试:

<input
    v-model="comb.inactive == 1 ? 0 : 1"
    type="checkbox"
    @click="setInactive(comb.id_base_product_combination)"
>


<input
    v-model="comb.inactive == 1 ? false : true"
    type="checkbox"
    @click="setInactive(comb.id_base_product_combination)"
>

你还有别的主意吗?

xdyibdwo

xdyibdwo1#

考虑使用true-valuefalse-value作为快捷方式:

<input
    v-model="comb.inactive"
    type="checkbox"
    :true-value="false"
    :false-value="true"
>

或者在本例中,您可能会寻找交替整数,您可以直接设置它们。

<input
    v-model="comb.inactive"
    type="checkbox"
    :true-value="1"
    :false-value="0"
>
wko9yo5t

wko9yo5t2#

您应该执行以下操作:

<input
   v-model="comb.inactive"
   type="checkbox"
   @click="setInactive(comb.id_base_product_combination)"
>
mounted(){
      this.comb['inactive'] = !(this.comb['inactive']);
}

为了更好地练习,可以使用computed
一个二个一个一个

unguejic

unguejic3#

如果你想"反转" v模型,那么只需定制一个输入组件!
∮ ∮ ∮ ∮ ∮一个月一个月

Vue.component('reverse-checkbox', {
  props: ['value', 'label'],
  template: `
    <label>
      <input
        type="checkbox"
        :checked="valueInverse"
        @input="onInputChanged"
      />
      <span>{{label}}</span>
    </label>
  `,
  computed: {
    valueInverse() {
      return !this.value;
    },
  },
  methods: {
    onInputChanged(e) {
      this.$emit('input', this.valueInverse);
    },
  },
});

用法

然后,您可以像使用其他输入组件一样使用v-modelmore information about custom inputs here

<reverse-checkbox
  v-model="invertedModel"
  label="This checkbox will show the inverted value"
></reverse-checkbox>
0wi1tuuw

0wi1tuuw4#

您可以自定义checkbox的事件和属性,而不是使用v-model。

<input
    class="form-check-input"
    type="checkbox"
    :id="day.label"
    :checked="!day.is_closed" 
    @change="($event) => day.is_closed = !day.is_closed"
/>

例如,在我的例子中,我有一个复选框HTML元素,所以我设置了checkedchange属性。

  • 具有文本类型和<textarea>元素的<input>使用value属性和input事件;
  • <input type="checkbox"><input type="radio">使用checked属性和change事件;
  • <select>使用value作为 prop ,使用change作为事件。

相关问题