因此,我在搜索此问题的答案时发现,在导入时,{React'不需要在{}中,因为它是默认导出而不是命名导出,是的,但是我还已经看到,在导入默认导出时,我们可以在导入时使用任何名称。但是在这种情况下,我们只能使用下面的导入
import React from 'react';
不是
import Somename from 'react';
答案 0 :(得分:10)
您可以以这种方式导入React,但是如果您使用的是JSX,则还需要更新配置以告知编译器您正在使用的“ builder”功能不再React.createElement
,但改为Somename.createElement
。 (如果您使用的是Babel,则可以使用pragma
directive进行此操作。)这是因为,正如the React documentation中所说的那样:
const element = (
<h1 className="greeting">
Hello, world!
</h1>
);
被编译为:
const element = React.createElement(
'h1',
{className: 'greeting'},
'Hello, world!'
);
...如此React
(或您在配置中将其更改为的任何名称)must be in scope。除此之外,还可以。