在导入时更改蜂蜜导出后,ES6导出会更改吗?
对于可读性并保持重要的内容,我们考虑使用以下文件结构:
export default myFunction;
myFunction.$inject = ['something'];
function myFunction(){
//
}
但是,根据定义,可以在导入上定义的$注入值?
import myFunction from './myFunction';
if(myFunction.$inject)
// What value has myFunction.$inject ?
导入的文件刚刚导入到导出语句?
为我们使用webpack和babeljs设置该值似乎已经设置了,但是对于严格的ES6解释而言,这是否成立?
但是,根据定义,可以在导入上定义的$注入值?
是的。但这与ES6模块无关。由于对象(函数是对象(表示为引用,因此您正在执行的任何突变在其他地方都可以参考该对象。
更有趣的方面是这个:
// a.js
export var x = 42;
export function changeValue() {
x = 21;
};
// b.js
import {x, changeValue} from './b.js';
console.log(x); // 42
changeValue();
console.log(x); // 21
导入和导出是 live 。这意味着将新值分配给导出也将导致导入更新。您可以通过参考将其视为分配:导入绑定没有导出值的副本,而是对内存位置的引用 em>导出绑定。。。。p>