javascript - 如何在 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函数,看来我的代码必须正常工作。一些论坛建议必须安装打字稿才能解决问题,尽管我已经安装了打字稿!
如果你帮助我,我会很高兴的!谢谢你。
解决方案
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
推荐阅读
- c# - Webclient 无法下载 .gif 文件吗?
- python - 如何在不使用格式的情况下返回带 2 位小数的浮点数?
- javascript - 如何在不丢失表单数据的情况下根据子组件中的表单更改启用/禁用父组件中的按钮?
- python - Python Dataframe 中带有运算符的条件语句
- javascript - Gatsby/GraphQL 使用 StaticQuery 检索本地 json 数据首先返回一个空数组,然后返回我的数据
- javascript - 如何从 Node.js 中的 http 请求的 req.headers 中提取数据?
- android - Xamarin Android 将图像保存到图库
- python - 烧瓶和 sqlalchemy
- node.js - 节点:内部/模块/cjs/loader:903 找不到纱线
- javascript - 资源缓存后如何从浏览器缓存中加载而不重新加载?