我有同样的问题。我想将 TSLint 扩展、tslint-microsoft-contrib 和 codelyzer 与 Web Analyzer 一起使用。这没有用。找出原因的第一步是在 server.js 中进行调整,可以在 C:\Users\[User]\AppData\Local\Temp\WebAnalyzer1.7.75 中找到它。我将 TSLint 函数更改为:
tslint: function (configFile, files) {
// Try catch tslint errors
try {
var tslint = require("tslint");
var options = {
formatter: "json",
configuration: JSON.parse(fs.readFileSync(configFile, "utf8").trim())
};
var results = [];
for (var i = 0; i < files.length; i++) {
var file = files[i];
var ll = new tslint(file, fs.readFileSync(file, "utf8"), options);
results = results.concat(JSON.parse(ll.lint().output));
}
} catch(error) {
// Return tslint error to visual studio so we can get some ideas for counter measures.
var result = JSON.parse('[{"endPosition": {"character": 0,"line": 0,"position": 0},"failure": "INSTALL ERROR","name": "/","ruleName": "INSTALL ERROR","startPosition": {"character": 0,"line": 0,"position": 0}}]');
result[0].failure = error.message;
return result;
}
return results;
},
当我运行 Web Analyzer 时,交替导致 Visual Studio 错误列表中出现错误反馈。应用替换后,不要忘记使用任务管理器强制执行 node.exe 的新实例。对于我的特殊情况,反馈导致在以下目录中安装以下 npm 包:
套餐:
- “codelyzer”:“0.0.12”
- “tslint”:“^3.7.3”
- “tslint-microsoft-contrib”:“^2.0.2”
- “打字稿”:“^1.8.9”
目录:
- C:\Users\[用户]\AppData\Local\Temp\WebAnalyzer1.7.75
- C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE
在此之后,Web Analyzer 能够使用与我的 grunt 任务相同的 tslint 规则。希望更新版本的 Web Analyzer 能更优雅地解决我的问题。