Skip to content

Commit 2343339

Browse files
committed
🐛 修复eslint对后台脚本的支持与兼容火狐
1 parent e55d23f commit 2343339

File tree

1 file changed

+25
-18
lines changed

1 file changed

+25
-18
lines changed

src/linter.worker.ts

+25-18
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ const linter = new Linter();
99

1010
const rules = linter.getRules();
1111

12-
const rule = {
12+
const config = {
1313
parserOptions: {
1414
ecmaVersion: "latest",
1515
sourceType: "script",
16-
ecmaFeatures: {},
16+
ecmaFeatures: { globalReturn: true },
1717
},
1818
rules: {
1919
"constructor-super": ["error"],
@@ -92,22 +92,29 @@ const severityMap = {
9292

9393
self.addEventListener("message", (event) => {
9494
const { code, id } = event.data;
95-
const errs = linter.verify(code, rule);
96-
const markers = errs.map((err: any) => ({
97-
code: {
98-
value: err.ruleId,
99-
target: rules.get(err.ruleId).meta.docs.url,
100-
},
101-
startLineNumber: err.line,
102-
endLineNumber: err.endLine,
103-
startColumn: err.column,
104-
endColumn: err.endColumn,
105-
message: err.message,
106-
// 设置错误的等级,此处ESLint与monaco的存在差异,做一层映射
107-
// @ts-ignore
108-
severity: severityMap[err.severity],
109-
source: "ESLint",
110-
}));
95+
const errs = linter.verify(code, config);
96+
const markers = errs.map((err: any) => {
97+
const rule = rules.get(err.ruleId);
98+
let target = "";
99+
if (rule) {
100+
target = rule.meta.docs.url;
101+
}
102+
return {
103+
code: {
104+
value: err.ruleId,
105+
target,
106+
},
107+
startLineNumber: err.line,
108+
endLineNumber: err.endLine,
109+
startColumn: err.column,
110+
endColumn: err.endColumn,
111+
message: err.message,
112+
// 设置错误的等级,此处ESLint与monaco的存在差异,做一层映射
113+
// @ts-ignore
114+
severity: severityMap[err.severity],
115+
source: "ESLint",
116+
};
117+
});
111118
// 发回主进程
112119
self.postMessage({ markers, id });
113120
});

0 commit comments

Comments
 (0)