首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Vue.Js,将值绑定到组件中的复选框

Vue.Js,将值绑定到组件中的复选框
EN

Stack Overflow用户
提问于 2019-03-01 07:25:32
回答 3查看 6.7K关注 0票数 3

我正在做一个组件,它是一个复选框的包装器(我做过类似于'text‘和’number‘类型的输入),但是我不能让我的传入值正确绑定。

我的组件是:

代码语言:javascript
复制
<template>
  <div class="field">
    <label :for="name" class="label">
      {{ label }}
    </label>
    <div class="control">
      <input :id="name" :name="name" type="checkbox" class="control" :checked="value" v-on="listeners" />
    </div>
    <p v-show="this.hasErrors" class="help has-text-danger">
      <ul>
        <li v-for="error in errors" :key="error">{{ error }}</li>
      </ul>
    </p>
  </div>
</template>
<script>
export default {
  name: 'check-edit',
  props: {
    value: {
      type: Boolean,
      default: false
    },
    label: {
      type: String,
      default: ''
    },
    name: {
      type: String,
      default: ''
    },
    errors: {
      type: Array,
      default: () => []
    }
  },
  mounted () {
  },
  computed: {
    listeners () {
      return {
        // Pass all component listeners directly to input
        ...this.$listeners,
        // Override input listener to work with v-model
        input: event => this.$emit('input', event.target.value)
      }
    },
    hasErrors () {
      return this.errors.length > 0
    }
  },
}
</script>

我已经全局导入了它;并通过执行以下操作在另一个视图中调用它:

代码语言:javascript
复制
<check-edit name="ShowInCalendar" v-model="model.ShowInCalendar" label="Show in calendar?" :errors="this.errors.ShowInCalendar"></check-edit>

我的模型在数据中,属性ShowInCalendar是一个布尔值,在我的测试用例中是真的。因此,当我查看页面时,该框处于选中状态。使用火狐中的Vue tools,我可以看到model.ShowInCalendar是真的,并且复选框被选中。但是,当我单击它时,该框仍处于选中状态,并且ShowInCalendar的值更改为'on',此后的更改不会更改ShowInCalendar的值。

我在这里找到了这个示例:https://jsfiddle.net/robertkern/oovb8ym7/,并尝试为它实现一个本地数据属性,但结果不起作用。

我尝试做的关键是让checkbox的初始检查状态是ShowInCalendar的初始检查状态(或通过组件上的v-model绑定的任何属性),然后在复选框被选中时更新该属性(为真或假)。

有没有人能给我提点建议?

谢谢。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54935823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档