如何在ES6块中公开数据?

时间:2016-12-30 10:37:00

标签: javascript scope ecmascript-6 export

ES6使用letconst引入了块范围。从块范围内export数据的正确方法是什么,以便我可以从外部访问它。 Using IIFE您可以将表达式分配给变量。

{
   const add = (a, b) => a+b
   // export add?
}

在块中使用export会引发错误。

'import' and 'export' may only appear at the top level

我发现的一种方法是将其分配给全局window对象

{
   const add = (a, b) => a+b
   window.add = add
}

我只是想知道建议的方法是什么?

2 个答案:

答案 0 :(得分:4)

创建一个函数,并返回所需的值。

const Add = () => {
    return 'function add returned...';
};

答案 1 :(得分:0)

您还可以在块外部创建变量,并在块内为其指定值。

let myVar;

const myFunc = () => {
    myVar = 'foo';
};