问题描述
此示例在react_codemirror2中完全混淆,该示例同时使用import
和require
语法;
[请参见requiring codemirror resources
部分中的https://github.com/scniro/react-codemirror2]
import CodeMirror from 'react-codemirror2';
require('codemirror/mode/xml/xml');
require('codemirror/mode/javascript/javascript');
我知道require('codemirror / etc')一词指的是普通的JS库依赖项(不是特定于React的),但是为什么require
甚至可以工作而不会抛出错误?
可以将require
替换为import
吗?
如何使VS Code编辑器中的警告消失?
解决方法
这部分文档的主要思想是您需要自己 require 自己需要的 CodeMirror 模块(这意味着如果您需要 javascript 模式或自动完成,您需要将这些模块添加到您的代码中)。
react-codemirror2
文档说:
如何导入/要求这些资产将根据 您的开发环境的细节
在大多数情况下,require
和 import
的作用相同,因此您可以使用 react-codemirror2
文档中提供的代码:
import CodeMirror from 'react-codemirror2';
require('codemirror/mode/xml/xml');
require('codemirror/mode/javascript/javascript');
或将其模拟与导入一起使用:
import CodeMirror from 'react-codemirror2';
import 'codemirror/mode/xml/xml';
import 'codemirror/mode/javascript/javascript';