翻翻過去那場雪
2022-06-16 14:49:06
假設(shè)我有一個(gè)名為“pink.js”的模塊。該模塊內(nèi)部是以下代碼:var color = 'red+white'module.exports = color現(xiàn)在在另一個(gè)文件中,假設(shè)我們執(zhí)行以下操作:const pink = require('./pink')console.log(pink) //Logs 'red+white'然后假設(shè)我們想通過重新請(qǐng)求文件來更改colorpink.js 中的值'red+blue',然后重新請(qǐng)求它。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'我該怎么做呢?如果可能的話,我可以對(duì)實(shí)際模塊執(zhí)行此操作require.js嗎?一個(gè)如何使用它的示例:僅使用代碼在本地修補(bǔ)模塊中的簡單問題。梅比自動(dòng)化這個(gè)過程。
2 回答

倚天杖
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊
答案是不。
一旦您需要一個(gè)文件,除非您修改并重新運(yùn)行您的應(yīng)用程序,否則它將具有相同的值。通常,每個(gè)模塊都有自己的隔離范圍。如果第一個(gè)模塊返回一個(gè)字符串并且沒有提供更改它的方法,則它只是一個(gè)只讀值。只有重新要求不會(huì)改變?nèi)魏问虑椤?/p>
干杯,

拉風(fēng)的咖菲貓
TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊
可能是這樣的:
// Main.js
var Color = (module.exports = {
value: 'red+white',
changeColor: (newColor) => (Color.color = newColor),
})
// AnotherFile.js
var color = require('./main')
color.changeColor('red+blue')
console.log(color.value)
添加回答
舉報(bào)
0/150
提交
取消