替换node.js自定义模块中的特定代码段

问题描述 投票:0回答:2

假设我有一个名为'pink.js'的模块。该模块内部是以下代码:

var color = 'red+white'
module.exports = color

现在在另一个文件中,假设我们执行以下操作:

const pink = require('./pink')
console.log(pink) //Logs 'red+white'

然后让我们说,我们想通过重新请求文件,然后重新请求,将pink.js中color的值更改为'red+blue'

const pink = require('./pink')
console.log(pink) //Logs 'red+white'

//Code to replace the value of color in pink.js to 'red+blue'

//Re-requiring:
const pink2 = require('./pink')
console.log(pink2) //Logs 'red+blue'

我将如何去做?

如果可能的话,我可以对require.js之类的实际模块执行此操作吗?

如何使用此示例:仅通过使用代码在本地模块中修补简单问题。 Maby使过程自动化。

谢谢!

javascript node.js replace fs
2个回答
0
投票

答案为否。>

一旦您需要一个文件,它将具有相同的值,除非您修改并重新运行您的应用程序。通常,每个模块都有其自己的隔离范围。如果第一个模块返回一个字符串,并且没有提供更改该字符串的方法,则它只是一个只读值。仅重新请求不会更改任何内容。

干杯,


0
投票

类似这样的事情:

© www.soinside.com 2019 - 2024. All rights reserved.