我怎么知道我应该在NodeJS中使用哪些参数

时间:2017-02-08 04:16:10

标签: javascript node.js express

我正在尝试学习nodeJS的各个方面,我正在学习本教程,我试着查看express和node的文档,但它并没有解释我想知道的内容。

你怎么知道函数传递了哪些参数?

以下是一个例子:

你怎么知道这会返回路由器?

module.exports = function(router) {

// http:localhost:3000/users

router.post('/users', function(req, res){
    var user = new User();
        user.username = req.body.username;
        user.password = req.body.password;
        user.email = req.body.email;
        if (req.body.username == null || req.body.username == '' || req.body.password == null || req.body.password == '' || req.body.email == null || req.body.email == ''){
            res.send('Ensure username, email and password were provided');
        } else {
            user.save(function(err){
                if (err) {
                    res.send(' Username/email already exists ');
                }   else {
                    res.send('User created ')
                }
            });
        }
});
/*console.log(router);
return router;*/
}

PS。我知道我使用的是router.post,但我怎么知道呢。 PS2。我认为这与询问JS的问题不同。

3 个答案:

答案 0 :(得分:1)

你应该看看the Express docs。此外,debugging your app可能是一个良好的开端。

编辑:正如其他人所说,你可以简单地使用console.log

答案 1 :(得分:0)

使用IDE支持实时代码提示时,它非常有用。对我自己来说,我使用VScode。通过及时显示代码提示,节省了我很多时间。我不再需要在使用它们时搜索文档。  enter image description here

答案 2 :(得分:0)

我想我明白了。

此功能:

router.post('/users', function(req, res){
var user = new User();
    user.username = req.body.username;
    user.password = req.body.password;
    user.email = req.body.email;
    if (req.body.username == null || req.body.username == '' || req.body.password == null || req.body.password == '' || req.body.email == null || req.body.email == ''){
        res.send('Ensure username, email and password were provided');
    } else {
        user.save(function(err){
            if (err) {
                res.send(' Username/email already exists ');
            }   else {
                res.send('User created ')
            }
        });
    }
});

路由方法 路由器)。

  

路由是指确定应用程序如何响应对特定端点的客户端请求,这是一个URI(或路径)和特定的HTTP请求方法(GET,POST等)

我可以使用任何名称而不是 路由器 ,但它仍然有效,因为它正在返回 路由器 方法。