Я просто новичок в node.js, и я не понимаю этого полностью.Может кто-нибудь объяснить мне, что я делаю не так?
Вот как я делаю новый продукт
exports.postAddProduct = (req, res, next) => {
const product = new Products({
title: req.body.title,
url: req.body.imgUrl
});
Когда я записываю полученные данные из тела, они выглядят нормально
{ title: 'Someting', url: 'http' }
Это класс
module.exports = class Product {
constructor(title, url) {
this.title = title,
this.url = url
console.log(this);
}
save() {
const p = path.join(path.dirname(process.mainModule.filename),
'data',
'products.json'
);
fs.readFile(p, (err, fileContent) => {
let products = [];
// if (!err) {
// products.push = JSON.parse(fileContent);
// }
products.push(this);
fs.writeFile(p, JSON.stringify(products), (err) => {
console.log(err);
});
})
}
и вот так выглядит мой prd.json.
[{"title":{"title":"Something","url":"http"}}]
Почему я дважды получаю имя объекта (title) ??