js代码如下
<script>
import { defineComponent, PropType } from 'vue'
import { IBreadcrumb } from '@/base-ui/breadCrumb'
export default defineComponent({
props: {
breadcrumbs: {
type: Array as PropType<IBreadcrumb[]>,
default: () => []
}
},
setup() {
return {}
}
})
</script>
其中,types中报错显示:
(alias) type PropType = PropConstructor | PropConstructor[]
import PropType
Type assertion expressions can only be used in TypeScript files
breadcrumbs: {
type: Array as PropType<IBreadcrumb[]>,
default: () => []
}
百度第一条答案是修改vs code中取消打勾javascript.validate.enable和typescript.validate.enable,改了之后还是报错
继续检查代码,发现props中使用的是typescript的语法,但是使用的script的标签没有加lang = “ts”,加了之后就没问题了。