相关疑难解决方法(0)

如何在ES6中导出导入的对象?

用例很简单:我只想导入一个名称与导入对象一样的对象.

例如:

import React from 'react';
export React;
Run Code Online (Sandbox Code Playgroud)

但这不起作用.我要写:

import React from 'react';
export const React = React;
Run Code Online (Sandbox Code Playgroud)

但这很奇怪.这样做的正确方法是什么?

更新:

感谢您的帮助和参考.我用许多线索解决了我的问题.我想和我分享一些常见的案例和解决方案.

出口进口

import d, {obj} from '...';

export {obj, d};
export {obj as name1, d as name2};
Run Code Online (Sandbox Code Playgroud)

重新导出所有已命名的导入

export * from '...';
export * as name1 from '...';
Run Code Online (Sandbox Code Playgroud)

重新导出一些命名的导入

export {a, b as name1} from '...';
Run Code Online (Sandbox Code Playgroud)

将默认导入重新导出为默认导出

export {default} from '...';
Run Code Online (Sandbox Code Playgroud)

将默认导入重新导出为命名导出

export {default as name1} from '...';
Run Code Online (Sandbox Code Playgroud)

import export ecmascript-6

203
推荐指数
3
解决办法
5万
查看次数

ES6`export*from import`?

是否有使用ES6或ES7或babel的语法,这将允许我轻松地将许多子文件组捆绑在一起?

例如,给出:

./action_creators/index.js
./action_creators/foo_actions.js
./action_creators/bar_actions.js
Run Code Online (Sandbox Code Playgroud)

让index.js导入foo和bar动作,然后重新导出它们,所以我可以

import {FooAction, BarAction} from './action_creators/index.js'
Run Code Online (Sandbox Code Playgroud)

如果我要更改我自己组织对象的文件,我不想记住/更改引用.

javascript ecmascript-6 babeljs

44
推荐指数
2
解决办法
3万
查看次数

导出导入的模块

我有两个javascript模块,如下所示:

// inner/mod.js
export function myFunc() {
   // ...
}

// mod.js
import * as inner from "./inner/mod";
Run Code Online (Sandbox Code Playgroud)

我想出口myFuncmod.js.我怎样才能做到这一点?

编辑:我应该澄清该功能正在按预期导出,inner/mod.js但我也想从外部导出功能mod.js.

对于那些要求澄清的人,我想实现这个目标:

// SomeOtherFile.js
import * as mod from "mod"; // NOT inner/mod

mod.myFunc();
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6 es2015

27
推荐指数
2
解决办法
1万
查看次数

在ES6中是否存在ES5的任何单线类比`module.exports = require('./ inner.js')`?

// before
module.exports = require('./inner.js');
// nowadays
export default from './inner.js';
Run Code Online (Sandbox Code Playgroud)

我正在努力做到这一点,但是babel只在es7阶段1中允许它,因为它现在提议.所以现在,我坚持这两行:

import sticker from './box-sticker.jsx';
export default sticker;
Run Code Online (Sandbox Code Playgroud)

我可以将它们缩短为一个吗?

javascript module ecmascript-6 babeljs

15
推荐指数
1
解决办法
7603
查看次数

标签 统计

ecmascript-6 ×4

javascript ×3

babeljs ×2

es2015 ×1

export ×1

import ×1

module ×1