您可以在类型代码json服务器中使用ES6导入/导出吗?



我正在使用 https://github.com/typicode/json-server 来建立一个模拟API。我正在使用.js文件以编程方式生成数据。我想使用import/export default语法来导入和导出 javascript,但我无法构建它。

我想使用:

import data from './data';
export default () => {
return {data: data};
};

但是我能让它工作的唯一方法是使用以下语法:

const data = require('./data');
module.exports = () => {
return {data: data};
};

它位于一个名为db.js的文件中,我使用json-server --watch db.js运行模拟 API。同样的问题也适用于data.js文件。这是我尝试运行它时遇到的错误:

SyntaxError: Unexpected identifier
at Module._compile (internal/modules/cjs/loader.js:723:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:692:17)
at require (internal/modules/cjs/helpers.js:25:18)
...

我尝试将其移动到不同的子目录,但没有成功。我能做些什么来允许这个应用程序使用import/export default语法运行?

我认为如果您的节点版本为 13.0.0 或更高版本,则需要在 package.json 中添加"type": "module"