22 lines
726 B
JavaScript
22 lines
726 B
JavaScript
import editorWorker from 'monaco-editor/esm/vs/editor/editor.worker?worker';
|
||
import jsonWorker from 'monaco-editor/esm/vs/language/json/json.worker?worker';
|
||
import tsWorker from 'monaco-editor/esm/vs/language/typescript/ts.worker?worker';
|
||
|
||
/** 初始化 MonacoEnvironment */
|
||
export function initMonacoEnvironment() {
|
||
if (!self.MonacoEnvironment) {
|
||
// 配置编辑器环境(Service Worker 等)
|
||
self.MonacoEnvironment = {
|
||
getWorker(workerId, label) {
|
||
if (label === 'javascript' || label === 'typescript') {
|
||
return new tsWorker();
|
||
} else if (label === 'json') {
|
||
return new jsonWorker();
|
||
} else {
|
||
return new editorWorker();
|
||
}
|
||
},
|
||
};
|
||
}
|
||
}
|