我正在尝试将 React-Ace 更新到版本 8,但我无法让工作人员工作。
/node_modules/ace-builds/src-min-noconflict/worker-css.js:1:2821: Cannot resolve dependency 'ace/lib/es5-shim'
我见过有人说可以通过导入 webpack ace-build 包来修复它,但我使用的是 Parcel 而不是 webpack
import AceEditor from 'react-ace';
import 'ace-builds/src-noconflict/worker-json';
import 'ace-builds/src-noconflict/mode-json';
import 'ace-builds/src-noconflict/theme-github';
import 'ace-builds/src-noconflict/ext-searchbox';
render() {
<AceEditor
mode='json'
fontSize={14}
theme='github'
value={value}
onChange={this.onChange}
editorProps={{ $blockScrolling: true }}
setOptions={{
minLines: 4,
maxLines: 30,
enableBasicAutocompletion: true,
enableLiveAutocompletion: true,
enableSnippets: false,
showLineNumbers: true,
tabSize: 4,
useWorker: true,
}}
/>
}
谢谢 :)
我在使用 worker-javascript 时遇到了同样的问题。
这个问题有什么解决办法吗??
有点想出一个解决方法(至少现在它不再是一个障碍)
将以下内容添加到package.json
https://en.parceljs.org/module_resolution.html#aliases
"alias": {
"ace/lib/es5-shim": "ace-builds/src-noconflict/ace.js"
}
您还需要将您需要的任何worker-*.js
文件从node_modules/ace-builds/src-noconflict
复制到/dist
文件夹。
不知道为什么,但至少它可以构建和运行。 🤷♂️
最有用的评论
我在使用 worker-javascript 时遇到了同样的问题。