Vue组件里props校验写法不规范会被ESLint警告,该怎么改?

公孙丽丽 阅读 8

我在写Vue组件时用了props校验,但ESLint一直报“props should be an object with properties as keys”这个警告,明明功能是正常的,但团队要求过CI检查,必须修复。我试过改成对象形式,但又怕写错类型。

这是我的代码:

<script>
export default {
  props: ['title', 'count'], // 这里被警告了
  mounted() {
    console.log(this.title);
  }
}
</script>
我来解答 赞 2 收藏
二维码
手机扫码查看
1 条解答
夏侯尚昆
这个警告是因为你用的数组形式在Vue官方文档里已经不推荐了,虽然功能能用,但规范上要求用对象形式来定义props。

改成对象写法就行,有两种方式:

第一种是简写形式,只指定类型:



第二种是完整形式,可以加默认值、必填项、校验函数之类的:



官方文档里明确说了,props应该用对象形式,这样一是类型提示更完善,二是团队其他人看代码的时候一目了然,知道每个prop是什么类型、是否必传。

你们团队要是要求严格的话,建议用第二种完整形式,把类型和默认值都写清楚,CI检查肯定能过。
点赞
2026-03-18 02:02