我正在开发一个基于此样板的应用程序:react-app-boilerplate
我想将 javascript 模式应用于 codemirror,但在插入 http://codemirror.net/mode/javascript/javascript.js 中找到的外部脚本时出现“CodeMirror 未定义”错误
我不确定如何在此配置中将所有内容连接在一起,我尝试从 javascript.js 文件中的react-codemirror 中获取 CodeMirror 对象,但没有成功。
var InputCode = React.createClass({
getInitialState () {
return {
code: '{ "message": "Some JSON input" }'
};
},
updateCode (newCode) {
this.setState({
code: newCode
});
},
render () {
var options = {
lineNumbers: true,
extraKeys: {"Ctrl-Space": "autocomplete"},
mode: {name: "javascript", json: true, globalVars: true},
theme: "sublime-text-like",
viewportMargin: Infinity
};
return <Codemirror value={this.state.code} onChange={this.updateCode} options={options} />;
}
});
最佳答案
需要预先需要的所有 CodeMirror 模式和插件 - 当您需要它们时,它们会使用 CodeMirror.defineMode()
来配置自己,因此当 CodeMirror 尝试使用时会找到它们稍后再讲。
例如对于您正在使用的样板文件,在渲染您的应用程序之前,需要在其 main.js
模块中使用 JavaScript 模式:
require('codemirror/mode/javascript/javascript')
关于reactjs - 如何在React + Browserify环境中应用Codemirror模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32784633/