0
const mongoose = require("mongoose"),
requiredAttr = {type: String, required: true},
employeeSchema = new mongoose.Schema({
employeeNumber: {
type: String,
unique: true,
required: true
},
firstName: requiredAttr,
lastName: requiredAttr,
image: requiredAttr
},
{
timestamps: true //get createdAt, updatedAt fields
});
employeeSchema.methods.writeThis =() => {
console.log("doing writeThis");
console.log(this);
};
module.exports = mongoose.model("Employee", employeeSchema);
始終產生貓鼬實例方法失去執行上下文
doing writeThis
{} //would think I would see my employee properties here
然後我測試一些基本的上下文經由節點命令行切換,並找到我不能執行以下操作(如在瀏覽器中)
let test = { foo: "bar" };
let writeThis =() => { console.log(this); };
writeThis.apply(test); //or
writeThis.bind(test);
我錯過了什麼?
它:但是,您可以通過編輯它被定義的情況下改變它!感謝您及時的回覆 –