【问题标题】:Vue Material Checkbox Checked选中 Vue 材质复选框
【发布时间】:2021-07-11 13:13:31
【问题描述】:

我已经尝试/猜测了我能想到的每个 v-bind/v-model/:checked/:value 组合,但我无法在加载时检查这些该死的复选框:

使用 Vue 材质/Vue3:

    <div v-if="items.length">
      <div
        v-for="(value,key,index) in this.items"
        :key="index"
        :ref="'icon'+items[key].id">
        <md-checkbox
          :id="'TDS'+key"
          v-model="items[key].complete"
          true-value="1"
          @change="doDo(items[key].id)"
          class="md-primary m-0"
          >
          {{ items[key].item }} {{items[key].complete}}
        </md-checkbox>
      </div>
    </div>

我想不通的是,如果 items[key].complete=1 加载数据时,如何检查复选框。

【问题讨论】:

    标签: vue.js vuejs3 vue-material


    【解决方案1】:

    这个应该已经可以工作了,如果您正确接收数据,它可能会由于反应性而自行更新。也许尝试v-model="!!items[key].complete" 只是为了确保您的值被强制转换为布尔值。

    【讨论】:

    • 两件事 - 1:我以前从未见过双重爆炸,王牌! 2:这个答案+删除真值(obvs)使复选框被选中。那里的问题是强制。但是 - 现在当我选中一个框时,事件会触发(v 简单方法,只是一个 Axios 帖子),但该框没有选中。好奇。
    • > "Cannot use 'in' operator to search 'complete' in true" 点击后。
    • 看官方文档here 好像根本不需要true-value prop。尝试删除它。
    • 谢谢基苏。我试了一下,遗憾的是没有改变。我 - 认为 - 最后可能是复选框绑定到一个对象,但我发送到后端的更改事件没有更新该对象。解决这个问题的各种尝试都以循环结束,所以我放弃了,用一个由图标组成的快速组件代替了原生复选框。
    【解决方案2】:

    你已经在循环中了

    v-model="value.complete"
    

    所有其他绑定也是如此。

    您的数据不应在模板中使用this 访问

    v-for="(value,key,index) in items"
    

    【讨论】:

    • 感谢 value.complete 提示。不知道。
    猜你喜欢
    • 2017-12-24
    • 2018-04-04
    • 1970-01-01
    • 1970-01-01
    • 2019-06-30
    • 2021-10-03
    • 2018-09-15
    • 2021-03-16
    • 1970-01-01
    相关资源
    最近更新 更多