我试图将logger.js导入app.js中,但是一次又一次遇到错误。 语法错误:无法在模块外部使用import语句。
var url='http://mylogger.io/log';
function log(message){
//send an http request;
console.log(message);
}
module.export.log=log;
import logger from './logger';
我正在使用节点12.0。
答案 0 :(得分:0)
答案 1 :(得分:0)
如果您使用import logger from './logger';
之类的ESM(ECMAScript模块)语法,则必须指定ESM导出。
注意:如果您使用的是v12,则必须使用Node.js v12.17.0或更高版本(changelog reference)或使用--experimental-modules
标志。
此外,您必须在"type": "module"
中将package.json
指定为提到的@Evert
所以:
logger.js
var url='http://mylogger.io/log';
// or export function log(message) {
function log(message){
//send an http request;
console.log(message);
}
export default log;
app.js
import logger from './logger';
package.json
在您的"type": "module"
中指定package.json
{
"name": "<project>",
"version": "<version>",
"description": "<description>",
"type": "module",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
......
}