Sau*_*rma 9 javascript amd visual-studio-monaco monaco-editor
我正在使用 loader.js 创建摩纳哥编辑器,但在控制台中出现两次错误“每个脚本文件只能有一个匿名定义调用”。
<script src="/monaco-editor/min/vs/loader.js"></script>
Run Code Online (Sandbox Code Playgroud)
创建编辑器的代码
require.config({ paths: { 'vs': '/monaco-editor/min/vs' }});
require(['vs/editor/editor.main'], function() {
monacoEditor= monaco.editor.create(document.getElementById('coding-editor'), {
value: [
'function x() {',
'\tconsole.log("Hello world!");',
'}'
].join('\n'),
language: 'javascript'
});
});
Run Code Online (Sandbox Code Playgroud)
我尝试搜索该问题并找到以下相关答案:
您正在加载的某些代码正在使用匿名模块 ID 调用定义。你可以:
通过 AMD 加载器加载该代码(即手动需要它),以便 AMD 加载器创建标签<script>。
在 AMD 加载程序之前加载该代码(即定义对该代码段不可用)
在该脚本的评估期间取消设置定义(即,如果您使用标签加载它<script>,则在之前取消设置定义并在之后恢复它)
尝试取消设置define.jquery,据我所知jquery可能会在定义函数上检查它
这个页面已经有很多 jquery 了,我之所以理解这一点是因为 jQuery。请帮助一些人通过例子让我理解。谢谢
小智 2
今天早上我遇到了同样的问题,我应用了第二种解决方案。
在 AMD 加载程序之前加载该代码(即定义对该代码段不可用)
这是有效的,因为define正如错误所述,是从 jQuery 内部匿名调用的。在require.js 网站中有进一步解释,它恰好使用了与 loader.js 类似的 loader 函数(define、require)。
就我而言,我只是确保在 jQuery 之后包含我的加载器,这样defines 就不会发生冲突。
| 归档时间: |
|
| 查看次数: |
5990 次 |
| 最近记录: |