簡體   English   中英

是否可以在node.js中為模塊變量定義一個set函數

[英]is it possible to define a set function for module variables in node.js

我發現您可以像這樣在node.js中執行get函數

Object.defineProperty(exports, "g_myvar", {
 get: function() { return g_myvar; }
});

所以也許你可以像這樣設置函數

Object.defineProperty(exports, "g_myvar", {
 set: function(val) { g_myvar = val; }
});

但兩個導出函數的名稱相同,因此無法正常工作。 我想我可以使用其他名稱的函數,但這意味着將所有變量分配更改為函數調用。

只需結合它們:

Object.defineProperty(exports, "g_myvar", {
  get: function() { return g_myvar; },
  set: function(val) { g_myvar = val; }   
});

在您的模塊中

module.exports = {
   mySetter: function (value) {...},
   myGetter: function () {return ...}
};

然后您可以在任何地方使用模塊

var myModule = require('my-module);
myModule.mySetter(...)
myModule.myGetter(...)

等等....

也許我不明白這個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM