javascript - 基于 vue 3 中计算的另一个计算的更改

标签 javascript vuejs3

我在 vue 3 中有这个。我需要使用 prop id 更改标题,如果 0 应该是 'New' 否则 'Details' 基于另一个我有 editMode 的计算属性

setup(props) {
  const {id} = toRefs(props)
  const editMode = computed(() => {
    return id.value !== 0
  })
  const title = computed(() => {
    return editMode ? 'Details' : 'New'
  })
}

问题是当 editMode 为 false 时,标题没有改变......一直保持“详细信息”。

有什么想法吗?

最佳答案

我认为您需要在标题计算中将 editMode 更改为 editMode.value,因为 editMode 也属于 Ref 类型。

const title = computed(() => {
  return editMode.value ? 'Details' : 'New'
})

这应该可以简单地解决您的问题。

同时尝试 console.log(typeof id.value) 以确保字符串 '0' 和数字 0 没有混淆。

关于javascript - 基于 vue 3 中计算的另一个计算的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69986581/

相关文章:

javascript - 为什么这个 forEach 函数在所有元素中重复最后一个值?

javascript - 通过一个按钮提交多个表单

vue.js - 使用 Vue CLI V4 调试 Vue 3

javascript - Firebase - Vue 数据库集成不起作用

typescript - 返回渲染函数(例如 JSX)时,将 vue-devtools 与 composition-api 结合使用

javascript - 使用 JavaScript 和 Canvas 实现 ColorPicker

javascript - Angular 2 在所有http调用完成后做一些事情

javascript - 为什么只有第一次点击会增加投票计数器,而其他点击则不会?

javascript - 当 ref 的值改变时,Vue 不会更新模板 Vue 3

typescript - vue 3 和 typescript - 当 ComputedRef<> 位于 React() 内部时,无法访问它;