首页 / NODEJS / Node.js 的原型注入方法
Node.js 的原型注入方法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Node.js 的原型注入方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1117字,纯文字阅读大概需要2分钟。
内容图文
![Node.js 的原型注入方法](/upload/InfoBanner/zyjiaocheng/787/4657f4e3497d4726b286595241db5e14.jpg)
问题提出
现在有两个DAO类,我希望他们能互相访问,生成实例,但是相互require()
会导致循环引用,出现空对象
User.class.coffee
Group=require './Group.class.js'
class User constructor:(@uid)->
...
getGroups:(cb)-> db.query 'XXXXX',(err,rows)-> cb null,(new Group row.gid for row in rows)
module.exports=User
Group.class.coffee
User=require './Group.class.js'
class Group
constructor:(@gid)->
...
getAdmin:(cb)->
db.query 'xxxxxx',(err,uid)->
cb null,new User uid
module.exports=Group
上面这样的写法,出现了循环引用,User,Group中至少有一个会出现空对象
我的解决方法
使用三个文件,第三个文件为注入文件,为类文件原型添加方法
User.class.coffee
class User constructor:(@uid)->
......
Group.class.coffee
User=require './Group.class.js'
class Group
constructor:(@gid)->
...
getAdmin:(cb)->
db.query 'xxxxxx',(err,uid)->
cb null,new User uid
module.exports=Group
User.inject.coffee
User=require '../User.class.js' Group=require '../Group.class.js'
User.prototype.getGroups:(cb)->
db.query 'XXXXXXX',(err,rows)->
cb null,(new Group row.gid for row in rows)
有什么更好的解决方法,请联系我,谢谢。
转载于:https://www.cnblogs.com/ireul/p/3404906.html
内容总结
以上是互联网集市为您收集整理的Node.js 的原型注入方法全部内容,希望文章能够帮你解决Node.js 的原型注入方法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。