我在一个单独的JavaScript文件中创建了一个类,然后将其导入了另一个文件。但是,在导出的类中出现语法错误。
该类在未导出时不会显示错误。
在 Property.js (导出的类)
中class Property{
//constants declarations
YEAR_AMOUNT = 10;
PERIOD_AMOUNT = 120;
//Properties
closingCosts;
initialInvestment;
//arrays declarations
//income
adjustedRent= new Array();
adjustedOtherRevenue = new Array();
grossRevenue= new Array();
effectiveRevenue= new Array();
constructor(title, address, askPrice, muniLandEval, muniBuildEval, notes){
this.title=title;
this.address=address;
this.askPrice=askPrice;
this.muniLandVal = muniLandEval;
this.muniBuildVal = muniBuildEval;
this.notes=notes
}
//other methods
}
export default class Property
在 propertyManager.js 中(导入)
//handle property (calculations, creation, save)
const express = require('express');
const router = express.Router();
const Property = require('./Property.js');
router.post('/', (req, res) => {
//create a Property
const property = new Property(req.body.title,
req.body.address,
req.body.askPrice,
req.body.muniLandVal,
req.body.muniBuildVal,
req.body.notes
);
})
module.exports = router;
有问题的错误
D:\ImmoTuul\RE_Analysis_\RE_MVP\server\routes\api\Property.js:4
YEAR_AMOUNT = 10;
^
SyntaxError: Unexpected token =
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)
at Object.<anonymous> (D:\ImmoTuul\RE_Analysis_\RE_MVP\server\routes\api\propertyManager.js:4:18)
at Module._compile (internal/modules/cjs/loader.js:778:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
我希望能够在 propertyManager 文件中使用该类及其构造函数。
答案 0 :(得分:3)
如果您发布的正是您的Property.js文件,则好像您有一个额外的class
关键字。
export default class Property;
///此处的类无效
export default Property;
//应该是这个
除非您要在同一行中导出和声明(这不是您显示的内容)
答案 1 :(得分:0)
我通过遵循@Valijon建议并使用
解决了此问题module.exports = Property;