eslint-js extension.js文件部分代码
var report = cli.executeOnText(text, doc.fileName)
// 修改为下面代码eslint处理正确
// var report = cli.executeOnText(text, path.relative(doc.workspaceFolder.uri.path,doc.uri.path))
let errorMsgs = [];
if (report && report.results && Array.isArray(report.results) && report.results.length == 1) {
let result = report.results[0];
let messages = result.messages;
if (messages && messages.length > 0) {
for (let j = 0; j < messages.length; j++) {
let errorMsg = messages[j];
if (errorMsg.severity == 2) {
errorMsgs.push({
column: errorMsg.column - 1,
line: errorMsg.line - 1,
message: errorMsg.message
});
}
}
}
let diagCollection = hx.languages.createDiagnosticCollection(pluginName);
diagCollection.set(doc.uri, errorMsgs);
//自动修复
if (result.output !== undefined) {
const diffs = diff.stringDiff(text, result.output, false);
let workspaceEdit = new WorkspaceEdit();
let edits = [];
for (let df of diffs) {
edits.push(new TextEdit({
start: df.originalStart,
end: df.originalStart + df.originalLength
}, result.output.substr(df.modifiedStart, df.modifiedLength)));
}
workspaceEdit.set(doc.uri, edits);
hx.workspace.applyEdit(workspaceEdit);
}
}
console.log(report, errorMsgs)
// 打印出结果 filePath: 'c:\\Users\\feath\\Desktop\\test\\uni-app-cli\\main.js' 错误
// 实际路径应为filePath: 'c:\\Users\\feath\\Desktop\\test\\uni-app-cli\\src\\main.js'
featherjiang (作者)
复现问题了吗 需要详细代码配置吗
2021-06-10 16:36