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

cal*_*n24 8 javascript vuejs3

我在 vue 3 中有这个。我需要使用 prop id 更改标题,如果是 0 应该是“新”,否则“详细信息”基于我拥有 editMode 的另一个计算属性

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

问题是当 editMode 为 false 时,标题不会改变......始终保持“详细信息”。

任何想法 ?

小智 10

我认为你需要更改editModeeditMode.value内部标题计算,给定editMode也属于 Ref 类型。

const title = computed(() => {
  return editMode.value ? 'Details' : 'New'
})
Run Code Online (Sandbox Code Playgroud)

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

还要尽量console.log(typeof id.value)确保字符串'0'和数字0没有混淆。