3 回答
TA贡献1829条经验 获得超13个赞
从你的 package.json 我可以看到你正在尝试使用 --experimental-modules 运行节点。如果是,请尝试更改:
import {Brandade} from "./modules/Brandade";
到
import {Brandade} from "./modules/Brandade.js";
运行 node--experimental-modules
本身不会解析文件扩展名。
TA贡献1852条经验 获得超1个赞
尝试使用 commonjs 导入样式。
代替
import {Brandade} from "./modules/Brandade";
经过
const { Brandade } = require("./modules/Brandade");
同时将 Brandade 文件导出语法更改为 commonjs,如下所示。
class Brandade {
constructor(){
}
}
module.exports = { Brandade };
为了使用 ES6 导入语法,请使用像 Babel 这样的转译器。
TA贡献1856条经验 获得超5个赞
我的 nodejs 版本是 14,我回到了 12 版本。
节点--版本
v12.19.0
npm --version
6.14.8
我删除了 package.json 并输入命令“npm init”。已创建一个新的 package.json 文件。我添加了以下行:
"Start": "node index.js" in scripts.
我还修改了 Brandade.js 文件:
Module.exports = {Brandade};
在 :
Module.exports = Brandade;
最后,在 index.js 中,我添加了以下几行:
let Brandade = require ('./ scripts / Brandade');
console.log ("Hello");
let brandade = new Brandade ("my name", 3);
brandade.show_name ();
而且效果很好。
感谢您的参与和回答。
再见。
有关信息,package.json 文件:
{
"name": "typescript_tests",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "node index.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC"
}
布兰达德.js:
class Brandade {
constructor(nom, prix) {
this.nom = nom;
this.prix = prix;
}
get nom(){
return this.nom;
}
set nom(nom){
return this.nom = nom;
}
afficher_nom(){
console.log(this.nom);
}
}
module.exports = Brandade ;
添加回答
举报