Vue中如何正确使用props?

How to use props in Vue correctly?

我和我的同事有一个有趣的问题。他通过 this.$props[propName] 调用在组件中使用 props,但我通过 this[propName] 调用简单地使用 props。我没有在 Vue 文档中找到任何提及使用 $props 的地方(我不知道,也许我看起来不够努力),所以我的方式对我来说似乎更正确。我的同事认为使用 $props 是更明显的方式来立即了解它是 prop 还是数据。我们谁是对的?

堆栈:Javascript + Vue2 + Nuxt

我理解你的同事,使用 this.$props[propName] 更容易理解,因为这个值来自道具,你不能改变它。 但是这种方式更容易出现错误,因为道具名称没有自动完成功能,它只是一个任何开发人员都可能犯错的字符串,IDE 不会更正它们。 使用 this.propName 时,您将获得自动完成功能,如果您仍然犯错,IDE 会警告您。

注意:当 运行 vue app 和你改变一个 prop 时,你会在控制台中收到一个错误,所以我认为你使用 this.propName

是非常安全的