命名出口:
假设您创建了一个名为的文件
utils.js,其中包含您希望其他模块(例如React组件)可以使用的实用程序功能。然后,将每个函数 命名为export
:
export function add(x, y) { return x + y}export function mutiply(x, y) { return x * y}假设utils.js与React组件位于同一目录中,则可以使用如下所示的导出方式:
import { add, multiply } from './utils.js';...add(2, 3) // Can be called wherever in your component, and would return 5.或者,如果愿意,可以将整个模块的内容放在一个通用的名称空间下:
import * as utils from './utils.js'; ...utils.multiply(2,3)
默认出口:
另一方面,如果您有一个仅做一件事的模块(可以是React类,正常函数,常量或其他任何东西),并且想让其他人可以使用,则可以使用 默认export
。假设我们有一个file
log.js,其中只有一个函数可以注销其调用的任何参数:
export default function log(message) { console.log(message);}现在可以这样使用:
import log from './log.js';...log('test') // Would print 'test' in the console.log导入时不必调用它,实际上可以随心所欲地调用它:
import logToConsole from './log.js';...logToConsole('test') // Would also print 'test' in the console.合并:
一个模块既可以具有默认导出(最多1个),也可以具有命名导出(一个一个地导入,或
*与别名一起使用)。React实际上有这个,请考虑:
import React, { Component, PropTypes } from 'react';


