[英]Why does npm try to compile a old version of my code?
我对 npm 和 node.js 完全陌生,所以如果我没有提供正确的细节,请原谅我。 我正在为一个在 npm 中使用开箱即用框架的网站编写插件。 当我愉快地编码时它工作正常,但在某些时候它开始尝试编译一个不再存在的文件。
我使用npm run start
编译我的 html 文件(其中也包含所有的 javascript 代码)并得到这个错误:
ℹ info Compiler will compile ./src/plugin.html
ℹ info Transpiling with babel
✖ error Error
SyntaxError: unknown: Unexpected token (555:3)
553 |
554 |
> 555 | });
| ^
让我大吃一惊的是,./src/ ./src/plugin.html
中不存在这个简单的语法错误(我已经四次检查了这个事实)。 这显然与该文件的早期版本有关。
npm 是否有某种缓存会导致它编译旧版本的文件? 我注意到如果我删除了大部分代码,它会再次编译,但是当我替换代码时它会再次中断。 似乎如果该文件与其缓存版本有些相似,它会尝试编译缓存版本而不是当前版本。
我试过用npm --force cache clear
缓存,但没有效果。
有什么建议么?
对于使用 npm 编译代码时遇到类似问题的任何人,我发现我的问题确实是一个简单的语法错误。 但似乎 npm 对编译错误实际上是什么感到困惑。 它指向文件中不存在的一行代码,我不知道它是从哪里得到的。
在这种特殊情况下,罪魁祸首的语法错误是缺少};
关闭一组包装的函数。
因此,这里的教训似乎是不要太相信 npm 理解哪些语法错误会引发编译错误的能力。
我能够摆脱这种情况的唯一方法是:
您是否尝试使用重新构建或类似的东西或 npm cache clean insted of npm --force cache clear?
取消 git rebase 后我遇到了同样的问题。 我可以解决此问题的唯一方法是更改这些文件中的某些内容并在之后恢复更改。
我最近遇到了这个问题。 如果您在项目中使用 typescript,则可能在 tsconfig.json 文件中使用了错误的配置,可能已将 typescript 文件构建到其相应的 js 文件中,并且这些 js 文件是每次运行项目时运行的文件。
对我来说清楚地捕捉我的浏览器它有效
通过按Ctrl+s
修复!
对我来说,默认情况下vsc
不会保存像PyCharm
这样的自动更改的代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.