首页 > 解决方案 > Vue中如何正确使用props?

问题描述

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

堆栈:Javascript + Vue2 + Nuxt

标签: vue.jsvuejs2vue-component

解决方案


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

注意:当运行 vue 应用程序并且你改变一个道具时,你会在控制台中得到一个错误,所以我认为你使用起来很安全this.propName


推荐阅读