Joh*_*aly 7 javascript node.js npm
我对 npm 和 node.js 完全陌生,所以如果我没有提供正确的细节,请原谅我。我正在为一个网站编写一个插件,该网站使用 npm 中的开箱即用框架。当我愉快地编码时,它工作得很好,但在某些时候它开始尝试编译一个不再存在的文件。
\n\n我用来npm run start编译我的 html 文件(其中也包含所有 javascript 代码)并收到此错误:
\xe2\x84\xb9 info Compiler will compile ./src/plugin.html\n\xe2\x84\xb9 info Transpiling with babel\n \xe2\x9c\x96 error Error\n SyntaxError: unknown: Unexpected token (555:3)\n\n 553 | \n 554 | \n > 555 | });\n | ^\nRun Code Online (Sandbox Code Playgroud)\n\n让我伤脑筋的是这个简单的语法错误不存在于./src/plugin.html(我已经四次检查了这个事实)。这显然属于该文件的早期版本。
npm 是否有某种缓存会导致它编译旧版本的文件?我注意到,如果删除大部分代码,它会再次编译,但是当我替换代码时,它会再次中断。看起来,如果文件与其缓存版本有些相似,它会尝试编译缓存版本而不是当前版本。
\n\n我尝试过清除缓存npm --force cache clear但没有效果。
有什么建议么?
\n对于任何在使用 npm 编译代码时遇到类似问题的人,我发现我的问题确实是一个简单的语法错误。但 npm 似乎对编译错误到底是什么感到困惑。它指向文件中不存在的一行代码,我不知道它从哪里得到的。
在这种特殊情况下,语法错误的罪魁祸首是缺少};关闭一组包装的函数。
因此,这里的教训似乎是不要过于相信 npm 理解哪些语法错误会引发编译错误的能力。
| 归档时间: |
|
| 查看次数: |
10360 次 |
| 最近记录: |