Monaco Editorをwebpackのプロジェクトに追加する
monaco-editor-webpack-plugin
を使うのが簡単:
npm i -D monaco-editor-webpack-plugin
次のようにプラグインとして追加するだけで、勝手に設定してくれる:
const MonacoEditorWebpackPlugin = require("monaco-editor-webpack-plugin")
module.exports = {
plugins: [new MonacoEditorWebpackPlugin()],
}
プレビュー用にここでは以下を追加:
npm i -D webpack-cli webpack-dev-server html-webpack-plugin
webpack.config.js
:
const path = require("path")
const MonacoEditorWebpackPlugin = require("monaco-editor-webpack-plugin")
const HtmlWebpackPlugin = require("html-webpack-plugin")
module.exports = {
entry: path.resolve(__dirname, "src", "index.js"),
plugins: [new MonacoEditorWebpackPlugin(), new HtmlWebpackPlugin()],
// webpack 6 ではいらなくなるはず:
experiments: {
css: true,
},
}
例えば次のようなJavaScriptとCSSを読み込むと:
src/index.js
import * as monaco from "monaco-editor"
import "./index.css"
monaco.editor.create(
document.body.appendChild(document.createElement("div")),
{
language: "javascript",
value: `console.log("Hello, 世界")`,
}
)
src/index.css
html,
body,
body > div {
height: 100%;
}
画面いっぱいにMonaco Editorが表示されるはず:
webpack serve --mode development