这是工具地址 https://github.com/liangzeng/class-di
这是针对js对象的数据注入工具,class-di 依赖于 method-cxt-di 库。这是 method-cxt-di 的视频介绍 http://blog.csdn.net/u012094814/article/details/70196166

下面是使用 class-di 工具的例子代码。

const di = require("class-di");

class User {
    change() {
        this.service.log();
    }
}

const DIUser = di(User, function (method, cxt, args, methodname, Class, newArgs) {
    return {
        service: {
            log() {
                console.log("call method's name is " + methodname);
            }
        }
    }
});

const user = new DIUser();
user.change();  // call method's name is change
  • 值得注意的是 user.service 是 undefined ,因为通过 class-di 注入的数据都是私有属性。

这里写图片描述

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐