Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript NodeJS从基于自定义模块的匿名函数获取对象_Javascript_Node.js_Object_Module - Fatal编程技术网

Javascript NodeJS从基于自定义模块的匿名函数获取对象

Javascript NodeJS从基于自定义模块的匿名函数获取对象,javascript,node.js,object,module,Javascript,Node.js,Object,Module,我第一次尝试NodeJS,这个服务器非常棒,但是我遇到了一个小问题,我不明白我做错了什么:( 我有两个文件:server.js和rules.js rules.js read rules.html必须将其内容返回到如下对象中: {'title':'Title','msg':'<div id="test">[...]</div>'} 然后像这样更改Rules.js socket.on('openBox', function(data) { if (data.id =

我第一次尝试NodeJS,这个服务器非常棒,但是我遇到了一个小问题,我不明白我做错了什么:(

我有两个文件:server.js和rules.js

rules.js read rules.html必须将其内容返回到如下对象中:

{'title':'Title','msg':'<div id="test">[...]</div>'}
然后像这样更改
Rules.js

socket.on('openBox', function(data) {
    if (data.id == 'rules') {
        rules.getRule(data, function(error, data) {
            if (!error) {
                var rulesObj = {
                    "title": "Règles du chat",
                    "msg": data
                };
            } else {
                var rulesObj = {
                    "title": "Erreur lors de la récupèration des règles du chat",
                    "msg": "<div id=\"error\">Une ereur s'est produite lors de la récupération des données, veuillez rééssayer plus tard...<br />Si le problème persiste signalez le</div>"
                };
            }
            console.log(rulesObj);
            socket.emit('openBox', rulesObj);
        });
    }
});
exports.getRule = function(data, callBackFunction) {
    var fs = require('fs');
    var rulesPath = __dirname + '/views/rules.html';
    fs.readFile(rulesPath, {encoding:'utf-8'}, callBackFunction);
}

好的,我理解,但是我不能把整个代码都推到rules.js中?我希望极简主义的server.js能让代码更简单。谢谢
function(error, data) {
    if (!error) {
        var rules = {
            "title": "Règles du chat",
            "msg": data
        };
    } else {
        var rules = {
            "title": "Erreur lors de la récupèration des règles du chat",
            "msg": "<div id=\"error\">Une ereur s'est produite lors de la récupération des données, veuillez rééssayer plus tard...<br />Si le problème persiste signalez le</div>"
        };
    }
    return rules;
}
socket.on('openBox', function(data) {
    if (data.id == 'rules') {
        rules.getRule(data, function(error, data) {
            if (!error) {
                var rulesObj = {
                    "title": "Règles du chat",
                    "msg": data
                };
            } else {
                var rulesObj = {
                    "title": "Erreur lors de la récupèration des règles du chat",
                    "msg": "<div id=\"error\">Une ereur s'est produite lors de la récupération des données, veuillez rééssayer plus tard...<br />Si le problème persiste signalez le</div>"
                };
            }
            console.log(rulesObj);
            socket.emit('openBox', rulesObj);
        });
    }
});
exports.getRule = function(data, callBackFunction) {
    var fs = require('fs');
    var rulesPath = __dirname + '/views/rules.html';
    fs.readFile(rulesPath, {encoding:'utf-8'}, callBackFunction);
}