【发布时间】:2021-11-16 19:07:35
【问题描述】:
使用 TypeScript(通过 script 标签的lang="ts" 属性)创建 Vue 组件时,PhpStorm(版本 2021.2.2)显示有关本机 JavaScript Object 的任何方法的警告为“未解析的函数或方法”,例如:
<template>
...
</template>
<script lang="ts">
const v = Object.values({ a: 'a', b: 'b' });
</script>
结果:
如何配置 PhpStorm(或 WebStorm)以将 Object 识别为原生 JS ES6+ Object?
(作为参考,Cmd + 点击Object 会跳转到lib.es5.d.ts,因此假定 JavaScript 版本错误。但是,在 Languages & Frameworks > JavaScriptScript 下,版本已经设置为 ECMAScript 6+)
【问题讨论】:
-
看看这个github issue which mentions your exact problem
The script lang=ts showing misleading errors in .vue files -
编译时没有报错吗?问题仅与IDE有关吗?您在屏幕截图中的“更多操作...”下有哪些选项。
-
@JuanMendes - github 问题似乎有点不同,因为它讨论的是 vue 实例上的引用问题,而不是 IDE 中的通用 JS 版本不匹配。回覆。编译时出错 - 不,没有错误,代码执行良好。只是 IDE 出了问题。
-
如果您的 typescript 配置错误(看起来确实如此),编译器也会显示错误。您是否尝试在 Settings | 中启用编译器服务?语言和框架 |打字稿,顺便说一句?
-
@lena - 是的,Typescript 语言服务已启用。编译器没有显示任何错误 - 纯粹是 IDE 将其突出显示为问题。
标签: javascript typescript vue.js phpstorm webstorm