当我尝试使用 Web Essentials 在 Visual Studio 中编译 LESS 模板时,我收到一条错误消息,显示“意外的 token u”,没有文件名、行号和列号。为什么会这样?
最佳答案
转至 %USERPROFILE%\AppData\Local\Microsoft\VisualStudio\12.0\Extensions
这是每个用户的 Visual Studio 扩展所在的文件夹。 WebEssentials 将位于一个随机生成名称的子文件夹中。
从 WebEssentials 文件夹中,打开文件 Resources\nodejs\tools\server\services\srv-less.js
并转到第 65 行,内容如下:
map = JSON.parse(output.map);
问题是源映射输出可能是未定义的值。
JSON.parse
只能解析字符串,因此它将其转换为字符串值 "undefined"
在解析之前,但 JSON 不会将其识别为有效 token 。 (它只理解 null 值,不理解 undefined 值。)所以...将第 65 行更改为:
map = JSON.parse(output.map || "null");
瞧;对具有空输出的文件进行 LESS 编译再次起作用。
来源:
https://github.com/madskristensen/WebEssentials2013/issues/1696
关于较少编译器 : Unexpected token u,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28220052/