javascript - Js写入类内部的文件方法
问题描述
我想要一个可以 CRUD 的课程。每个操作都有方法。使用我在课堂上提到的参数。
我希望我可以在我的方法中使用给构造函数的参数。我怎样才能做到这一点?
我可能需要使用字典或列表来正确存储数据。有什么建议吗?
const fs = require('fs')
class Product {
constructor(productType, modelName, productPrice) {
this.productType = productType;
this.modelName = modelName;
this.productPrice = productPrice;
}
oopWrite(productType, modelName, productPric) {
const blah = [{productType, modelName, productPric}]//or use str arg;
const dataJSON = JSON.stringify(blah)
fs.writeFileSync('bleh.json', dataJSON);
return dataJSON;
}
}
const product1 = new Product();
console.log(product1.oopWrite({"productType":"Laptop"}, {"modelName":"ccc"}, {"modelName":"blah"}));
这个类在没有构造函数的情况下工作。如何使方法使用构造函数中传递的参数?
更新我的问题 - >我需要将产品实例化为:
const blah = new Product{productType, modelName, productPrice}//or use str arg;
解决方案
您正在使用 readFileSync 而不是 writeFileSync
const fs = require('fs')
class Product {
constructor({productType, modelName, productPrice}) {//use object parameter names
this.productType = productType;
this.modelName = modelName;
this.productPrice = productPrice;
}
oopWrite() {
const blah = [{this.productType, this.modelName, this.productPrice}]//pull from this;
const dataJSON = JSON.stringify(blah)
fs.writeFileSync('bleh.json', dataJSON);
return dataJSON;
}
}
const product1 = new Product({productType:"car", modelName:"porsch", productPrice:100000});
console.log(product1.oopWrite());//call without params
推荐阅读
- javascript - 未捕获的类型错误:xyz 不是函数(从字符串内部调用时)
- c# - 发送电子邮件的文件中只允许使用一个模型声明
- javascript - 从互联网页面连接到 ws://localhost:23120/install 时出现安全错误
- swift - 使 numberOfRowsInSection 中的索引超出范围
- javascript - 向所有人输出声音
- sbt - 当 project/build.properties 中的 sbt.version 为 1.2.8 时,飞行方式 sbt 不起作用
- dictionary - 有没有更好的方法在 Dart 中编写这种数据结构?
- android - MVVM/Room 从 Dao 或 Repository 中提取单个项目,最好的方法是什么?
- angular - Angular 网站向内部 API 发出请求
- node.js - 如何在http get nodeJS上设置自定义超时