更新 JS 从外部定义 属性

Update JS define property from outside

我使用以下代码,我想从其他模块更新一些 属性,我应该怎么做?

这是模块代码(实际上还有更多属性...)

"use strict"
function define(name, value) {
    Object.defineProperty(exports, name, {
        value:      value,
        enumerable: true
    });
}

define("USER_PATH","oldValue");

现在我从其他模块需要它,我想更新密钥 USER_PATH 以与 "newValue" 一起使用。

我尝试要求这个模块并喜欢遵循它不会更改 USER_PATH 中的值,在调试器中我看到 "oldValue"

var foo = require("theAboveModule")
foo.USER_PATH = "test";

在里面放一个writable: true

function define(name, value) {
    Object.defineProperty(exports, name, {
        value:      value,
        enumerable: true,
        writable: true
    });
}

这是一个 jsbin,您可以在其中查看它的运行情况:http://jsbin.com/burifi/edit?js,console