v-model绑定checkbox无法动态更新视图

2023-11-09

在vue2中使用v-model绑定checkbox

            <input type="checkbox" v-model="isChecked" :value='isChecked' @change="handleCheckboxChange" />

监听change事件,并在change事件中做一些特殊处理,比如用户在登录时有没有阅读过隐私协议,在此之前有没有先填写手机号,如果没有通过校验,对于checkbox选中状态下应该取消选中。

问题

<body>
    <div id="app">
        <div>
            <input type="checkbox" v-model="isChecked" :value='isChecked' @change="handleCheckboxChange" />
            <label>{{ isChecked }}</label>
        </div>
    </div>
</body>

</html>
<script>
    var app = new Vue({
        el: '#app',
        data() {
            return {
                isChecked: false
            };
        },
        methods: {
            handleCheckboxChange() {
                console.log("checkbox ===>now:" + this.isChecked)
                this.isChecked = !this.isChecked;
                console.log("run[this.isChecked = !this.isChecked;] checkbox ===>now:" + this.isChecked)

            }
        }
    })
</script>

在这里插入图片描述
再执行this.isChecked = !this.isChecked后,checkbox的状态依旧是选中状态,并没有动态更新视图,v-model绑定的值为false,但是依旧是选中状态

为什么

首先来看v-model对于checkbox的原理:
在这里插入图片描述
v-model对于checkbox是实现的checked与change事件的结合(语法糖),通过代码我们也可以看出,属性已经很好的完成了响应的变化,这就可能是由于html元素input本身的原因了,再去看一下checkbox的属性:
在这里插入图片描述可以发现,checked只会在首次渲染,随后的checked值改变不再反应该变化,由此可见,为什么checkbox样式框没有发生变化的原因了

解决方案

1.刷新组件,页面重新渲染

      this.$nextTick(() => {
          this.isChecked = !this.isChecked;
      });

2.绑定checkbox的value值

<input type="checkbox" :value='isChecked' @change="handleCheckboxChange" />

使用v-model没有value属性
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

v-model绑定checkbox无法动态更新视图 的相关文章

随机推荐

  • 【二叉树】44 二叉树:度为2的结点个数

    问题描述 内容 1 请参照链表的ADT模板 设计二叉树并逐步完善的抽象数据类型 由于该环境目前仅支持单文件的编译 故将所有内容都集中在一个源文件内 在实际的设计中 推荐将抽象类及对应的派生类分别放在单独的头文件中 参考教材 课件 以及网盘中
  • 斜率优化

    如果转移方程中含有 既有i 的项又有j的项 往往可以考虑斜率优化 斜率优化的目标是将dp式转化为 y kx b 这种形式 P3195 HNOI2008 玩具装箱TOY 题意 有1 n个玩具需要打包 每个玩具的有其长度 可以一段区间一段区间地
  • 珍藏多年的各类资源网站分享给大家

    学习网站 素材巷 这个应该有少数人知道吧 是我近几年来第一次遇到这样的网站 一个专注于分享文字素材的分享平台 涵盖文学范围广 包含散文 小说 诗词 戏曲 科普 天文 地志 阴阳 医卜 僧道 技艺 高考作文等 网址 素材巷 文字写作素材分享平
  • Unity3d接入googleplay内购详细说明(二)

    因为本文内容比较多 整理花费时间比较长 故分几篇完成 以下为本文目录结构 方便查阅 Unity3d接入googleplay内购详细说明 一 引言 一 准备条件 二 谷歌开发者后台应用创建说明 Unity3d接入googleplay内购详细说
  • 《Python进阶系列》二:Python中的 for-else 语法

    for else 语法 你是否见过这个语法 for i in xxx pass else pass 是不是一脸懵逼 啊哈哈哈 事实上 在 Python 中 else不仅可以与 if搭配使用 还可以与 for结合 想不到吧 我们先来看一个例子
  • 结合ruoyi-cloud和ruoyi-app实现微信小程序的授权登录

    文章目录 1 前言 1 1 环境准备 1 2 登录流程图 2 小程序代码 2 1 RuoYi App编辑api login js 2 4 新增按钮微信授权登录 2 6 新增wxHandleLogin方法获取code 2 9 创建sendWx
  • 重置计算机的本地策略,Win10怎样重置组策略/安全策略

    很多windows10系统用户都会使用注册表或组策略来深度调试系统 这些系统自带工具虽然能够实现一些表面上没有的功能 但也可能会让我们 翻车 对于注册表来说 修改之前做好备份是硬道理 恢复起来也很方便 但对于组策略和安全策略 要如何才能恢复
  • wxPython 菜单栏 工具栏 状态栏

    coding utf 8 Created on Mon Jun 10 03 56 09 2019 QQ群 476842922 欢迎加群讨论学习 author Administrator coding utf 8 import wx impo
  • RN_iOS项目部署流程实例

    文章目录 1 环境配置 1 1 安装node 1 2 安装Watchman 1 3 安装npm 1 4 安装cocoapods 2 百家云demo下载 3 运行百家云demo 3 1 顺利的话 3 2 踩过的坑 按这个目录流程走 3 2 1
  • 如何使用Flask包构建网页

    最近接到的任务是用Flask构建简单的算法成果展示网页 所以才来研究如何用flask构建网页 因为要求展示 对前端页面的美化不做要求 所以这篇博客的重点在于页面之间的跳转及前后端的数据传输 1 Flask运行HTML代码 默认情况下 Fla
  • C语言例题总结一

    目录 一 两数交换的多种方法 二 比较两数大小的多种方法 三 在重复的数字中找出不同的数字 1 在重复的数字中找出一个不同的数字 2 在重复的数字中找出两个不同的数字 一 两数交换的多种方法 第一种 引入第三方变量 利用了指针将地址传进去
  • solidworks大型装配体慢卡顿怎么办?来看专业的装配设计与仿真工作站是怎么解决的!

    相信很多CAD专业领域的设计工程师都或多或少的遇到慢 卡 顿的情况 按照网上各种设置一通问题依旧 换成昂贵的双路品牌图形工作站依然得不到改善 那么问题到底出在哪儿 下面就依Solidworks为例 从三维设计与仿真的特点来分析软件如何与硬件
  • IEEE Transactions的模板中,出现subfig包和fontenc包冲突的问题,怎么解决?

    IEEE Transactions的模板中 出现subfig包和fontenc包冲突的问题 怎么解决 本文章记录如何在IEEE Transactions的模板中 出现了subfig包和fontenc包冲突的问题 该怎么解决 目录 IEEE
  • 【C#排序算法】(三)希尔排序

    希尔排序 核心 定义增量序列 不断递减增量至1 做插入排序 public void ShellSort int arr 增量h 等于1时最后一次排序 int h arr Length 2 while h gt 1 这里开始是简单插入排序算法
  • C# 整套视觉开发(VisionAndMotionPro)

    实例截图 文件 590m com f 25127180 488329759 5989d1 访问密码 551685 核心代码 VisionAndMotionPro sln vs VisionAndMotionPro v14 v15 Serve
  • 为了对抗内卷,我去阿里“偷了”五套最新Java学习笔记

    最近整理了阿里五套最新的笔记 分别是Java后端30大核心知识点总结 2022最近金三银四面试题总结 阿里巴巴Java开发规范手册 2022版 Spring Cloud Alibaba全解 阿里巴巴机器学习算法集合 今天分享的内容很多 老师
  • 01.03第一篇之数据生成模块

    第3 章数据生成模块 3 1 埋点数据基本格式 公共字段 基本所有安卓手机都包含的字段 业务字段 埋点上报的字段 有具体的业务类型 下面就是一个示例 表示业务字段的上传 下面就是一个示例 表示业务字段的上传 ap xxxxx 项目数据来源
  • Audio Moth代码总结

    1 HFLE的定义 HFLE是指高频时钟分频器 预分频器 High Frequency Low Energy Clock Divider Prescaler 在低功耗模式下 为了节省能量 系统需要使用低频时钟 LFCLK 来驱动一些模块 如
  • linux 线程局部存储,tls_windows

    线程局部存储 线程局部存储 thread local storage TLS 是一个使用很方便的存储线程局部数据的系统 利用TLS机制可以为进程中所有的线程关联若干个数据 各个线程通过由TLS分配的全局索引来访问与自己关联的数据 这样 每个
  • v-model绑定checkbox无法动态更新视图

    在vue2中使用v model绑定checkbox