将参数函数Node.js从一个js传递给另一个

时间:2016-11-12 06:13:18

标签: javascript json node.js function express

我正在尝试将函数响应从一个Node.js脚本传递到另一个

这是我正在尝试的。 Index.js

var express = require('express');

require('./meter');

var app = express();

app.get('/',function(req,res){
    return;                    //hi function from another file
})

app.listen(3000);
console.log('listening on 3000 port')

meter.js

module.exports = {

    hi: function(req, res) {
        return res.status(200).json({"message" : "Hello V1"});
    }
};

确实需要功能才能完成这项工作吗?

提前致谢。

2 个答案:

答案 0 :(得分:3)

使用require时,应将其分配给变量,然后可以在代码中使用它:

package test1;

import java.io.IOException;

public class Main {

    public static void main(String[] args) throws IOException {
        DoublyLinkedList<Integer> list = new DoublyLinkedList<>();
        list.readData("Test.txt");
        list.bubbleSort();
        list.printList();   
    }
}

答案 1 :(得分:2)

Nir ​​Levy的回答是正确的,但我会尝试给你一些关于正在发生的事情的更多背景。

   function addNewUser() {
      var names = $('.compare_list td:nth-child(1)').map(function() {
        return $(this).text().trim();
      }).get();
      var newname = $('.newname').val();

      if ($.inArray(newname, names) != -1) {
        alert('this name is duplicate');
      } else if (newname == '') {
        alert('enter a name');
      } else {
        $('.compare_list > tbody:last-child')
        .append('<tr><td>' + newname 
          + '</td><td><i class="fa fa-times" aria-hidden="true"></i></td></tr>');
      }

    }

    // add user by Enter button
    $(document).on("keypress", "#newnam", function(e) {
      if (e.keyCode == 13) {
       addNewUser() // set `this`, pass parameters to `addNewUser`
      }
    });

    $(document).on('click', '.addNewName', addNewUser);

根据Nir的回答,您只需使用var express = require('express'); // Import the meter export and assign it a variable for reuse. var meter = require('./meter'); var app = express(); app.listen(3000); console.log('listening on 3000 port') 来处理对meter.hi

的请求
/

这里到底发生了什么是JavaScript将所有参数传递给app.get('/', meter.hi); 方法。如果是快递,则此处将有3个参数 - meter.hirequestresponse按顺序传递。

在模块next中,您只是单独使用请求和响应,这很好,但如果需要进行任何其他处理或meter的参数需要改变,您可能需要遵循以下练习

meter.hi

您可以更好地控制传递给模块的参数。