After creating a class in a separate JavaScript file and importing it into another file, I encountered a syntax error within the exported class.
All seemed fine when the class was not being exported.
Here is the code for Property.js (the exported class):
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
And here's how it is imported into 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;
The issue causing the error is as follows:
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)
To resolve this issue, I need the ability to use the class and its constructor in the propertyManager file.