看官方范例不解,未用到的模块为何要导入?

2016-07-24 10:42:47 +08:00
 sphawkcn

正在学习一个 Meteor 的官方范例( https://www.meteor.com/tutorials/react/components ),

看到这段代码( client/main.jsx ):

import React from 'react';
import { Meteor } from 'meteor/meteor';
import { render } from 'react-dom';
 
import App from '../imports/ui/App.jsx';
 
Meteor.startup(() => {
  render(<App />, document.getElementById('render-target'));
});

这里整段代码中都没有用到 React ,不知为何要用 import React from 'react'; 导入 React ? 小菜鸟理解不了,还请大牛释疑,谢谢。

3172 次点击
所在节点    JavaScript
2 条回复
xxxyyy
2016-07-24 10:58:44 +08:00
现在看起来好像是没用到 react ,主要是由于实例化 App 这个 react component 使用了 jsx ,但在 js 中 jsx 是不被支持的,因此 jsx 最终需要转化成 js 的代码(一般会通过 babel 来转),这里的 <App /> 会被转成 React.createElement(App),你看,这时需要 React 了吧。
sphawkcn
2016-07-24 11:21:20 +08:00
@xxxyyy 终于懂了,谢谢指点,自己想破脑袋都想不明白,有指点一下就明白了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/294512

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX