main.js
var count = 1;
// psuedocode
// if (words typed begins with @add)
require('./add.js');
// if (words typed begins with @remove)
require('./remove.js');
// if (words typed begins with @total)
require('./total.js');
module.exports.count = count;
total.js
var count = require('./main.js').count;
console.log(count);
add.js
var count = require('./main.js').count;
count += 10;
console.log(count);
remove.js
var count = require('./main.js').count;
count -= 10;
console.log(count);
console.log
1
11
-9
背景:
我有一个应用程序(irc bot),我想添加一个功能,让peeps可以做@add 1或@remove 1。我有一个main.js,它需要不同的文件,这取决于所说的触发器。所以add会触发add.js文件,然后需要(‘main.js’)并加上10 (为了简化,它实际上会解析这个数字并使用这个数字)。我遇到的问题是,当有人走来走去,做“删除”的时候。它需要(‘main.js’),并从1中减去10,得到-9。执行@total将输出1。
我已经对module.exports进行了相当好的搜索,但还没有遇到像上面列出的这样的示例。The docs没有包含任何接近我想要做的事情的例子;这些问题1,2我理解--但对我没有任何用处--因为我理解这里所说的话。
问题:
我想让@add和@remove操作相同的变量( count ),并让@total返回计入@add和@removes的总数。我是否错误地使用了module.exports;或者是否存在共享变量的通用方法,即一个文件可以修改module.exports的内容并将结果返回到main.js文件?
https://stackoverflow.com/questions/17120117
复制相似问题