当我在节点js中声明一个控制器时,如下所示,所有测试用例都运行良好。
module.exports = (req,res) => {
//code here
}
我正在测试用例文件中访问以下控制器,如下所示:
const controller = require('filename')
controller(req,res);
但是,当我在节点js中声明相同的控制器时,如下所示,所有测试用例都失败了。
const getController = (req,res) => {
//Code here
}
module.exports = { getController }
我正在测试用例文件中访问以下控制器,如下所示:
const {getController } = require('filename');
getController (req,res);
有人可以告诉我这里发生了什么吗?
答案 0 :(得分:1)
由于语法错误,因此无法正常工作。
使用:
module.exports = { getController : getController }
并以两种方式使用它:
import {getController} from 'filename';
const getController = require('filename').getController
使用require
时,您需要一个模块,而不是模块的功能。使用import
时,就是从模块导入函数。
您可以阅读here来了解require
和import
之间的区别