【问题标题】:WebStorm JSON files unresolved variable properties (syntax)WebStorm JSON 文件未解析的变量属性(语法)
【发布时间】:2016-10-13 03:54:48
【问题描述】:

实际示例在这里是最好的,所以在这里。我有一个名为 file.json 的 JSON 文件:

{
    "key": "hello"
}

还有一个JS文件在同一个目录下(NodeJS):

'use strict';

// Dependencies
const jsonFile = require('./file.json');

// Globals
const anotherFile = {
    key: 'world'
}

const fn = () => {
    console.log(jsonFile.key); // this 'key' is not recognized
    console.log(anotherFile.key); // this 'key' is recognized
};

现在,fn 函数应该并且确实将 helloworld 打印到控制台。我的问题是,虽然 WebStorm 将第二个文件 (anotherFile) 识别为 JavaScript 对象,但对于从 JSON 导入的文件却没有这样做。

这意味着anotherFile.key 具有紫色(在我的模板中)颜色的“key”,而另一个是纯白色,带有下划线,当它是“未解析的变量键”时。 也意味着我可以写anotherFile,它会显示所有可用的选项(函数、属性等),key 会在那里,而在第一个文件jsonFile 中,它不会。

有没有办法强制 WebStorm 将 JSON 识别为 JavaScript 对象? 谢谢!

编辑:使用 WebStorm 11.0.1

【问题讨论】:

  • 您使用的是哪个版本的 webstorm?
  • 当前版本为 11.0.1。添加到原始主题。

标签: json node.js webstorm


【解决方案1】:

请尝试升级 - 您的代码在 2016.2 对我来说可以正常工作:

【讨论】:

    【解决方案2】:

    Preference>Editor>File Types 你应该有这个: 但是我以为默认是这样的……

    【讨论】:

    • 没有任何 JSON 模式,只有 JSON。但在旧版本 (11) 的 webstorm 中(与 2016 当前版本相比)。
    • 你的 JSON 模式是什么?
    • *.bowerrc, *.jsb2, *jsb3, *.json
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-12
    • 1970-01-01
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    • 2014-04-15
    • 2015-08-21
    相关资源
    最近更新 更多