首页 > 解决方案 > 如何在 Node.js 服务器中包含 JavaScript 文件的功能?

问题描述

我有一个打字稿文件,其中添加了一些功能。下面显示了打字稿文件的实际地址:

../myproject/src/util/validation/user-validation

所有函数都从文件中导出。例如,

export function validateSignUpData(userDetail:UserDetail):Array<String>{

    let errorMessages = new Array<String>();
    /* Some Code */

现在我正在尝试在 Node 服务器中使用导出的函数,尽管它会引发我不理解的错误。

错误:找不到模块“../myproject/src/util/validation/user-validation”

这就是我试图在我的节点服务器文件中获取函数的方式:

app.post('/users',(req,res)=>{

    let validator = require('../myproject/src/util/validation/user-validation');
    let errorMessages = validator.validateSignUpData(req.body);

我用谷歌搜索了require函数,看来我的代码必须正常工作。一些论坛建议必须安装打字稿才能解决问题,尽管我已经安装了打字稿!

如果你帮助我,我会很高兴的!谢谢你。

标签: javascriptnode.jstypescript

解决方案


node js中有2种modules的方法,es6 modules和requrejs

require 与 module.exports 一起使用,将其添加到您的模块 module.exports.validateSignUpData=validateSignUpData 然后 require 函数将导出它。

另一种方法是使用 es6 模块,但并非在所有情况下都有效 https://nodejs.org/docs/latest-v13.x/api/esm.html#esm_enabling


推荐阅读