【发布时间】:2017-02-23 18:19:48
【问题描述】:
如何覆盖/劫持作用域链中的引用?
如果我在另一个文件(节点环境)中有一个函数:
const name = 'name_local'
export default () => { return name }
我想从另一个文件导入该函数,但覆盖它对name 的引用并传递一个新引用:
import nameFunc from '../otherFile'
const name = 'hijacked name reference'
nameFunc() // 'hijacked name reference'
【问题讨论】:
-
没有。这是不好的。这个的预期用途是什么?
-
为什么不使用默认参数
export default (name = name) => { return name },然后在你的其他文件中调用nameFunc(name); -
好吧,首先你试图覆盖一个常量......
标签: javascript