Javascript 导入ES6周围的括号

Javascript 导入ES6周围的括号,javascript,node.js,reactjs,Javascript,Node.js,Reactjs,我正在学习React Native,只是对导入的第一行中的括号感到好奇 import React, { Component } from 'react'; import { AppRegistry, Text } from 'react-native'; class HelloWorldApp extends Component { render() { return ( <Text>Hello world</Text> ); } }

我正在学习React Native,只是对导入的第一行中的括号感到好奇

import React, { Component } from 'react';
import { AppRegistry, Text } from 'react-native';

class HelloWorldApp extends Component {
  render() {
    return (
      <Text>Hello world</Text>
    );
  }
}

AppRegistry.registerComponent('HelloWorldApp', () => HelloWorldApp);
import React,{Component}来自'React';
从“react native”导入{AppRegistry,Text};
类HelloWorldApp扩展了组件{
render(){
返回(
你好,世界
);
}
}
注册表组件('HelloWorldApp',()=>HelloWorldApp);
为什么用
{}
包装组件而不使用React?

React
是默认导出(每个模块只能有一个导出)。可以按如下方式导入默认导出:

import React from "react";
import { Component } from "react";
组件
是一个命名的导出(可以有很多)。命名导出的导入方式如下:

import React from "react";
import { Component } from "react";
你看到的是这两个东西在同一条线上导入

default
导出并非在任何地方都自动可用,因此它们仍然需要导入

请注意,
React
需要导入的原因完全是因为JSX转换为JS的方式-
React
需要可用,因此
可以转换为
React。createElement(Text,…

React
是默认导出(每个模块只能有一个)。可以按如下方式导入默认导出:

import React from "react";
import { Component } from "react";
组件
是一个命名导出(可以有许多)。命名导出的导入方式如下:

import React from "react";
import { Component } from "react";
你看到的是这两个东西在同一条线上导入

default
导出并非在任何地方都自动可用,因此它们仍然需要导入


请注意,
React
需要导入的原因完全是因为JSX转换为JS的方式-
React
需要可用,所以
可以转换为
React.createElement(Text,

我认为这只是缩短下一次调用的问题,因为组件是React的子类,所以您可以使用React作为默认值,并将组件作为一个单独的类来使用。顺便说一句,当您需要特定的方法或类时,在导入中使用大括号,这就是export这里有更好的解释。

从“React”导入React;
从“react bootstrap/lib/Navbar”导入导航栏;
导出默认类MyNavbar扩展React.Component{
render(){
返回(
...
);
}
}

我认为这只是缩短下一次调用的问题,因为组件是React的一个子类,所以您可以使用React作为默认值,并将组件作为一个单独的类使用。另外,当您需要特定的方法或类时,在导入中使用大括号,这就是export。有一个更好的解释国家在这里。

从“React”导入React;
从“react bootstrap/lib/Navbar”导入导航栏;
导出默认类MyNavbar扩展React.Component{
render(){
返回(
...
);
}
}

这是因为它是作为默认值导出的,请参见@ivarni如果它是默认值,为什么还要在这里提及?嗯?它导入的变量必须有一个名称。仅从“react”导入
没有任何意义,可能会算作语法错误。我建议花一些时间阅读ES6模块系统。这是因为它是作为默认值移植,请参见@ivarni如果它是默认值,为什么还要在这里提及?嗯?导入它的变量必须有一个名称。仅从“react”
导入
没有任何意义,可能会被视为语法错误。我建议花一些时间阅读ES6模块系统。我认为值得一提的是,组件是分类为
命名导出
,因此您可以从单个文件中有多个命名导出,但只有一个默认值export@deowk我已经编辑添加了这个细节-让我知道你的想法。看起来很好…;)我认为值得一提的是,组件被分类为
命名导出
,因此您可以从单个文件中有多个命名导出,但只有一个默认值export@deowk我已经编辑添加了这个细节-让我知道你的想法。看起来很好…;)