使用require js导入monaco编辑器

时间:2017-03-17 12:26:36

标签: javascript node.js npm monaco-editor visual-studio-monaco

我已经使用

安装了monaco-editor
npm install monaco-editor

现在我想在我的js文件中要求

所以我试图要求使用

var monaco = require('monaco-editor');

但是它给了我模块未找到错误。

我做错了吗?

2 个答案:

答案 0 :(得分:1)

Monaco-editor使用自定义AMD风格的模块加载器。 loader.js将导致全局require被设置为Monaco-editor的加载器。

samples GitHub有很多在不同背景下使用编辑器的例子。

查看他们如何在Electorn示例index.html中解决您的问题。在坚持使用Monaco-editor自定义加载程序后,您可以像在大多数示例中那样使用它。它是AMD样式加载器,因此语法与节点var me = require('monaco')不同。我不确定是否可以使用类似节点加载器,但在加载loader.js并将require持久化到某些变量(如amdRequire)后,您将使用如下:

amdRequire(['vs/editor/editor.main'], function () 
{ 
    // your code using monaco ns here
    monaco.editor.create( document.getElementById('elementId'), {} );
})

答案 1 :(得分:1)

They just released ESM distribution which is compatible with webpack etc. Check out the docs here.

Also there are many examples for using monaco with webpack, parcel an so on. See all.