nodejs 注入 inject

本文介绍了一种通过条件注入不同对象的方法,以实现灵活的功能变化。在Node.js环境下,根据配置加载不同的用户类,并注入到工具方法中,展示如何根据不同条件加载特定模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当有些对象需要根据条件不同注入的时候,可以简单使用注入
如下例:根据配置不同创建不同的USER对象,注入到 tool.do 方法中,从而实现不同的效果

index.js 主函数

var tool = require("./tool.js");
// 此处是配置,根据配置决定 注入的是什么
var config = "Man";
if (config === "Man") {
    var USER = require("./man.js");
} else {
    var USER = require("./user.js");
}
var user = new USER("someone");

tool.do(user);

tool.js

exports.do = function test(user) {
    user.sayHi();
}

user.js

module.exports  = class User{
    constructor(name) {
        this.name = name;
    }
    sayHi(){
        console.log("hi user "+this.name);
    }
}

man.js

module.exports  = class MAN{
    constructor(name) {
        this.name = name;
    }
    sayHi(){
        console.log("hi man "+this.name);
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值