我能够实现在AngularJS中的摩纳哥-编辑器,但如果用户刷新页面的情况下,通过一个错误说,“没有定义”,这是因为,这是因为,在任何其他方式加载lazy.Is的情况下,摩纳哥可以立即加载。这是代码..
resolve: {
srcipts: function (lazyScript) {
return lazyScript.register([
"monaco-editor/min/vs/loader.js",
"monaco-editor/min/vs/editor/editor.main.nls.js",
"monaco-editor/min/vs/editor/editor.main.js"
]).then(function () {
// console.log(require);
require.config({ paths: { 'vs': 'monaco-editor/min/vs' } })
// console.log(monaco)
})
}
}这是我推荐人的链接
https://github.com/Microsoft/monaco-editor/blob/master/docs/integrate-amd.md
https://microsoft.github.io/monaco-editor/playground.html
帮我解决这个问题
发布于 2018-08-14 02:02:24
这不完全是你想要的答案,但是我在Angular 1.x中遇到了同样的问题。我最终在一个iFrame中实现了monaco。这使得它有点困难,但它的加载比AMD加载容易得多。
发布于 2020-03-06 17:39:30
我知道这远不是一个理想的解决方案,但我基本上最终在封装编辑器的指令中执行了以下操作。
function delayedInitialization() {
if (typeof window.monaco === 'undefined') {
$timeout(delayedInitialization, 200);
} else {
initialize();
}
}也许可以通过将编辑器打包为允许侦听某种类型的事件的方式来使其更简洁一些,但就目前而言,这可以满足我们的需要。
https://stackoverflow.com/questions/51265616
复制相似问题