如何在开发过程中向文档添加属性,但不保存到数据库?

Posted

技术标签:

【中文标题】如何在开发过程中向文档添加属性,但不保存到数据库?【英文标题】:How to add property to document during developing, but don't save to database? 【发布时间】:2018-12-08 17:02:56 【问题描述】:
VK_Accounts_schema.pre('init', function(doc) 
  doc.vk = new VK(doc.access_token);
  return doc;
)

VK_Accounts_schema.methods.get_API = function(cb) 
  console.log(this); // i can see property vk
  this.vk(...) // ERROR undefined!!!

我需要将 vk 准确地添加到文档中,我不需要将其保存到数据库中。

【问题讨论】:

究竟是什么错误? “未定义不是函数”或“vk 不是函数”?大不同。 TypeError: this.vk 不是函数 嗯,它不是一个函数,看起来像。你为什么用它作为一个? 我在中间件init中添加了属性vk;在 console.log(this) -> 我可以用我的函数看到属性 vk;但是 console.log(this.vk) -> undefined; 【参考方案1】:
VK_Accounts_schema.methods.get_API = function(cb) 
  this.get('vk')(...) // success :)

【讨论】:

以上是关于如何在开发过程中向文档添加属性,但不保存到数据库?的主要内容,如果未能解决你的问题,请参考以下文章

如何在文档字段而不是集合字段中向Firebase添加数据?

如何在 Swift 中向实体插入新数据?

如何在jquery datepicker中向html属性添加角度标签

如何在 smack 中向 chatmanager 添加多个聊天?

js中向对象中添加属性的两种方法?

在 PHP 中向特定用户推送通知