【JS】angular和require的区别

本文探讨了Require.js与依赖注入(DI)之间的区别与联系。Require.js关注的是按正确顺序加载代码,而DI则专注于实例化正确的类。两者分别在应用启动前和运行时发挥作用,互补而非替代。

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

Require and DI are similar concepts. Because they are similar developers often get confused and they think they can substituted one for the other, but in reality they are complementary.

require.js is concerned with loading the right code into the VM in the right order once before the application can run.
DI is concerned by instantiating the right classes in the right order many times during the application runtime.

The key differences are loading vs instantiating, classes vs instances, as well as once before application start vs many times during application runtime.

One needs to load the code before the code can be instantiated, hence the complementary nature of the two.

There is also a difference of scope and granularity. Require.js works on file level, and while you can essentially link different files at lead-time, once the files are linked, the relationships are fixed.

DI works on class level. It answers a question such as Class A needs Interface B, where do I get B from. While require.js can substituted different B code at load time, DI can chose among different instance of same B class or different subclass based of the context of where A is instantiated.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值