Webstorm 无法识别 JavaScript 文件

问题描述 投票:0回答:11

Look

Webstorm 无法将我的 .js 文件之一识别为 JavaScript 文件,因此我失去了语法突出显示并无法添加断点。我查看了

workspace.xml
文件,相关文件似乎与其他可以正常工作的 .js 文件具有类似的设置。

如果我更改文件名,它就可以正常工作。因此,Webstorm 不知何故陷入了对具有该名称的文件类型的误解。我还可以在哪里编辑项目?

Context menu

intellij-idea pycharm webstorm rubymine file-type
11个回答
195
投票

所以我看到这个问题的三个可能原因:

  1. 文件被标记为“纯文本”

  2. “文本文件”文件类型有一个与此文件匹配的模式(或返回:文件类型“JavaScript”排除此文件名)。见下图

enter image description here

  1. 有一个自定义插件可以覆盖具有此名称的文件的默认行为(不太可能)

更新:几年后,我发现了这种行为的又一个原因,很可能它是问题的主要根源。当您创建不带任何扩展名的文件时,会出现“注册新文件类型关联”。您可能会意外地为某些文件名指定新的文件类型。它可以用 (2) 修复,但这就是在此处添加模式的原因。

注意:该解决方案适用于所有基于 IDEA 的 IDE:IntelliJ IDEA、WebStorm、RubyMine、PyCharm、PhpStorm。


19
投票

文件 -> 设置 -> 编辑器 -> 文件类型 -> 文本文件 -> 检查“ContentRepository.js”模式并将其删除。


13
投票

如果文件被标记为“纯文本”,则可以按如下方式修复:

  1. 右键单击该文件。

  2. 菜单选项之一是“标记为Javascript”。就在“删除”下方。

  3. 单击该按钮。您的文件现在被 WebStorm 识别为 javascript。

由于WebStorm不允许右键单击后截图,因此无法在此处添加。


6
投票

我的问题是

Auto-detect file type by context


3
投票

对我来说这成功了
1) 偏好
2) 编辑
3) 文件类型
4)搜索javascript
5) 将

*.js
添加到已注册的图案


1
投票

您还可以尝试“模板数据语言”(在文件>设置中),这将强制在特定文件或文件夹上突出显示特定语言语法。请看下面的截图

对于代码块,您还可以使用“语言注入”。只需突出显示代码块,等待小灯出现,然后选择底部选项,然后选择您需要的语言(还附有屏幕截图)


1
投票

2022年更新!

右键单击文件并选择 JavaScript


0
投票

万一它在其他地方有帮助(天哪,这太可怕了)。

由于某种原因,IntelliJ 无法识别我的项目中的任何

.js
文件(即使在删除
.idea
(
rm -rf .idea
) 之后)。

我去了

Webstorm
(在我的例子中是
RubyMine
):
Webstorm > Preferences ... > Editor > File Types
然后去了识别的文件类型,选择了Javascript(但是无论你缺少什么文件类型都可以),然后添加回一个注册模式
*.js

的条目

当然,按

Apply
,然后按
Ok

哇,可怕的东西。但解决了我的问题,希望对其他人也有帮助。


0
投票

我一直试图将 .

js
添加为可识别的文件类型,但不知何故,
.js
被添加到
Ignored Files and Folders

我刚刚从

.js
中删除了
Ignored Files and Folders
,它对我有用。

  1. 偏好设置
  2. 编辑器
  3. 文件类型
  4. 忽略的文件和文件夹
  5. 删除
    *.js


0
投票

我遇到了一个奇怪的情况,这里的其他答案都不适合我,但后来我记得我是如何创建该文件的。

我尝试变得聪明并使用了以下命令

mkdir __tests__ && touch "${_}/index.test.js

shell 提示我完成双引号,这很好。我能够在 IntelliJ Idea 中加载该文件,但我很困惑为什么它没有获得 javascript 语法突出显示。我尝试更改文件关联,但没有成功。

然后我想我应该删除该文件并尝试重新创建它。当我输入 rm 命令时,我点击 Tab 键自动完成文件路径并看到了我的问题:

rm __tests__/index.test.js$'\n'

因为我在创建文件的命令中完成双引号之前按了 Enter 键,所以该文件被命名为

index.test.js\n
。 IntelliJ Idea 很高兴打开该文件并将其显示为
index.test.js
,但扩展名是
.js\n
,而不是简单的
.js
,因此它无法将该文件识别为
.js
文件。

重命名可能会起作用,但我只是将其删除并重新创建它,这次末尾没有

\n


0
投票

复制文件,使用 Windows 资源管理器将其删除,然后再次将其粘贴到文件夹 (DataAccess) 中。

惊喜!现在 Webstorm 认出了它...

© www.soinside.com 2019 - 2024. All rights reserved.