从'导入{}是什么。做?

时间:2019-12-12 12:42:17

标签: javascript reactjs ecmascript-6 import es6-modules

我当时看着some source code of a library,并且看到了此导入

import {SheetsRegistry, JssProvider, withStyles} from '.'

这是做什么的?如何导入from '.'

2 个答案:

答案 0 :(得分:4)

您共享的代码从同一目录中的index.js导入这些声明。

index.js:

// @flow
import withStyles from './withStyles'

export {ThemeProvider, withTheme, createTheming, useTheme} from 'theming'
export {default as createUseStyles} from './createUseStyles'
export {default as JssProvider} from './JssProvider'
export {default as jss} from './jss'
export {SheetsRegistry, createGenerateId} from 'jss'
export {default as JssContext} from './JssContext'
export {default as styled} from './styled'
export {default as jsx, create as createJsx} from './jsx'
export {withStyles}

// Kept for backwards compatibility.
export default withStyles

在此示例中,index.js用于重新导出src目录中的某些声明。通过这种模式,可以更轻松地移动声明,而不必重写许多导入。

答案 1 :(得分:0)

******命名导出和默认导出之间的区别。******

1个命名的出口

Constant.js

中的

导出函数,常量,变量...等

export const CREATE = 'CREATE';
export const DELETE = 'DELETE';

index.js

中这样导入
import {CREATE,DELETE} from './Constants';

2-默认出口

将其导出到 Constant.js

const update = ()=> 'UPDATE'
export default update();

并像这样在index.js中导入

import UPDATE from './Constants';

multiple types