解决Vue警告Write operation failed:computed value is readonly

作者:PKQ1023 时间:2024-04-09 10:49:25 

警告信息:

浏览器控制台警告:Write operation failed: computed value is readonly

使用环境:

Vue 3.2.41

Chrome x64 v103.0.5060.66

报错情景:

利用Vue的响应式修改某个值时出现该警告。

<template>
   {{ msg }}
   <br>
   <button @click="add">+</button>
</template>
<script setup lang="ts">
import { computed, ref} from 'vue'

const x = ref('-')

// 计算属性
const msg:any  = computed(()=>{
   return x.value + '-'
})

// 修改 计算属性的值 的方法
const add = () => {
   msg.value = msg.value + '???'
}
</script>

报错原因:

修改的值是计算属性,而计算属性是只读的。所以无法修改。

解决方法:

为计算属性配置修改方法,如下:

<script setup lang="ts">
import { computed, ref} from 'vue'

const msg = ref('-')

// 计算属性
const computedMsg: any = computed({
   get() {
       // 这里返回的值是获取计算属性的值
       return msg.value + '-'
   },
   set(newValue) {
       // 参数newValue是被修改后的值

// 这里是修改的具体逻辑
     /*
  注意这里不要使用下面的方法修改计算属性的值来达到修改目的
          而应该直接修改源响应数据xxx的值
*/
       msg.value = newValue        
       // computedMsg.value = newValue
   }
})

// 修改 计算属性的值 的方法
const add = () => {
   computedMsg.value = computedMsg.value + '???'
}
</script>

参考:

计算属性 | Vue.js

来源:https://blog.csdn.net/qq_43492356/article/details/127664277

标签:vue,警告,write
0
投稿

猜你喜欢

  • 使用XML配置c3p0数据库连接池

    2024-01-22 11:15:02
  • python3判断url链接是否为404的方法

    2021-11-12 15:17:54
  • CSDN 博客的代码高亮问题自己修复

    2022-07-28 11:33:25
  • 开启MySQL的binlog日志的方法步骤

    2024-01-29 07:31:25
  • Python可视化单词统计词频统计中文分词的实现步骤

    2023-10-24 17:16:49
  • 详解Python中的文本处理

    2023-07-02 08:14:00
  • Python教程之成员和身份运算符的用法详解

    2021-04-19 11:36:56
  • 纯JS实现AJAX局部刷新功能

    2024-05-02 17:04:38
  • python Kmeans算法原理深入解析

    2022-03-01 07:26:55
  • Python Counting Bloom Filter原理与实现详细介绍

    2021-04-04 19:01:54
  • Linux VPS备份教程 数据库/网站文件自动定时备份

    2024-01-14 21:41:42
  • python科学计算之numpy——ufunc函数用法

    2023-05-13 15:13:12
  • Pandas高级教程之Pandas中的GroupBy操作

    2022-04-14 19:22:25
  • Django ForeignKey与数据库的FOREIGN KEY约束详解

    2024-01-18 15:17:40
  • Mysql中的触发器定义与使用

    2024-01-26 10:37:45
  • 科讯CMS 5.0 模板标签清单列表

    2008-12-04 13:18:00
  • Python 新建文件夹与复制文件夹内所有内容的方法

    2022-03-22 00:05:05
  • MySQL数据库的索引原理与慢SQL优化的5大原则

    2024-01-18 14:46:01
  • element-plus中如何实现按需导入与全局导入

    2024-05-02 17:04:21
  • python学习笔记之调用eval函数出现invalid syntax错误问题

    2023-11-03 01:48:30
  • asp之家 网络编程 m.aspxhome.com