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
Node.js 如何在其他js文件中使用exports对象_Node.js_Express - Fatal编程技术网

Node.js 如何在其他js文件中使用exports对象

Node.js 如何在其他js文件中使用exports对象,node.js,express,Node.js,Express,这里是user.js文件及其类和导出 class User { static async select() { const selectResult = await usersDAL.listUsers(); return camelizeKeys(selectResult); } } module.exports.User = User; 我想在usersApi文件中使用 router.get('/',(req,

这里是user.js文件及其类和导出

class User {

        static async select() {
          const selectResult = await usersDAL.listUsers();
          return camelizeKeys(selectResult);
      }
    }

module.exports.User = User;
我想在usersApi文件中使用

router.get('/',(req, res) =>{

    let userList = new  User().select();
    res.send(userList);

});
错误显示

(intermediate value).select is not a function
请使用like so帮助我

/user.js
路径假定
user.js
文件与
usersApi
位于同一目录中

也就是说,您可能只想导出
用户

user.js usersApi.js
※如果可以,首先您应该使用更新的Node.js版本6.0

您可以通过
模块导出对象。导出
和导入通过
要求

如何出口 如何导入 User.select()是一个用作异步方法的方法。 您应该包装承诺块或使用异步等待语句

对不起,我的英语不好,我不执行上面的代码。
根据您的问题和user.js文件的类图,它可能无法正常工作。

class User {

        static async select() {
          const selectResult = await usersDAL.listUsers();
          return camelizeKeys(selectResult);
      }
    }

module.exports.User = User;
您希望导出并在usersApi文件中使用它。这样,您就可以使用

const User = require('.user');

router.get('/', async (req, res) =>{

    let userList = await User.User.select();
    res.send(userList);
});

因为导出User.js文件(ex:module.exports.User=User)中的用户对象就是这样,所以需要User.User.select()。您应该知道的另一个信息是,静态异步方法应该在异步或承诺方法内部调用。因此,我使用wait User.User.select()

检查您的意见,但得到相同的错误=>(中间值)。select不是function@Md.MaidulIslam如果您知道如何访问静态方法,可以查看下面的链接。
const User = require('./user.js')
class User {

    static async select() {
      const selectResult = await usersDAL.listUsers();
      return camelizeKeys(selectResult);
  }
}

module.exports = User;
const User = require('../model/user') // this path is dummy.
router.get('/', async (req, res) =>{

    let userList = await User.select();
    res.send(userList);
});
class User {

        static async select() {
          const selectResult = await usersDAL.listUsers();
          return camelizeKeys(selectResult);
      }
    }

module.exports.User = User;
const User = require('.user');

router.get('/', async (req, res) =>{

    let userList = await User.User.select();
    res.send(userList);
});