首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我真的需要写“ngInject”吗?

"ngInject"是AngularJS框架中的一个注解,用于在AngularJS的依赖注入中标识需要被注入的依赖项。在AngularJS 1.6版本之前,当使用ES6的类语法定义控制器或服务时,需要使用"ngInject"注解来告诉AngularJS注入依赖项。

然而,在AngularJS 1.6版本及以后的版本中,可以使用更现代化的方式来进行依赖注入,而不再需要使用"ngInject"注解。新的依赖注入方式可以通过使用ES6的装饰器语法或通过使用$inject属性来实现。

使用装饰器语法时,可以在类的构造函数前添加"@Inject"装饰器,并在构造函数的参数中列出需要注入的依赖项。例如:

代码语言:txt
复制
class MyController {
  constructor($scope, $http) {
    'ngInject';
    // 控制器的代码
  }
}

MyController.$inject = ['$scope', '$http'];

使用$inject属性时,可以在类的构造函数后通过静态属性$inject来指定需要注入的依赖项。例如:

代码语言:txt
复制
class MyController {
  constructor($scope, $http) {
    // 控制器的代码
  }
}

MyController.$inject = ['$scope', '$http'];

这样,AngularJS会根据指定的依赖项进行注入,无需再使用"ngInject"注解。

总结起来,如果你使用的是AngularJS 1.6版本及以后的版本,并且采用了ES6的类语法来定义控制器或服务,那么你不再需要使用"ngInject"注解。相反,你可以使用装饰器语法或$inject属性来指定需要注入的依赖项。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

三省吾身:真的懂 CAP

这把惊起了一身冷汗,赶紧去查了一下是不是分布式系统理论界又有新的论文来推翻了之前的 CAP 定理了。后来深入讨论以后,才发现是他对 CAP 的理解有误。...那么,为了帮助大家更好的理解 CAP 及其应用呢,借此机会,来试着写篇文章讨论一下这方面的内容,并且争取能通过实践将其表达的更加清楚。...CA,只要选,集群就给? 必须强调一下,只有真正理解如何让一个集群在没有网络分区的情形下能达到 CA 状态,我们才能理解好 CAP 理论。此时不得不吐槽一下,中文翻译中的三选二蛮害人的。...真的不是你想选哪两个,你就有哪两个的。 实际上,如果对于单节点的系统来说,一致性问题是不存在的(这个说起来有点武断,因为并发可能导致同一变量被不同线程读出不同状态。...这里必须又吐槽一下不负责任的翻译带来理解上的偏差。共识, Consensus。

44610
  • 的职业是前端工程师【七】:你真的懂前后端分离

    刚开始接触前后端分离的时候,正值它开始慢慢扩散的时候,也还没有意识到它带来的好处。觉得它甚是麻烦,当我改一个接口的时候,需要同时修改两部分的代码,以及对应的测试。...可是当我去使用这个,由前后端分离做成的单页面应用时,开始觉得这些是值得。...当后台开发人员选择 Java 的时候,可以不用 JSP 来编写前端页面,继续使用的 React 又或者 Angular。而我使用 React 时,也不影响后台使用某一个框架。...概念我们已经清楚了,但是还有一个问题:我们真的需要前后端分离真的需要前后端分离? ?...能提升开发效率?如果不能有效的提升开发效率,为什么要作死呢? 是否会提供 API 给 APP?如果我们已经有一个 API 提供给 APP,那么要做这件事就很容易了。

    1.1K80

    问你这篇保熟不?! -- 做服务端开发,不懂网络层,真的可以

    其实感觉这个专栏的东西确实是好东西,可能是深度不够吧。...想明白了这些,还是抓一个方向学下去吧,至少不要把老本都丢了呀。 做服务端开发,不懂网络层,真的可以? 有机会学就学呗,想那么多。 ---- 网络层简介 首先,TCP属于传输层,IP属于网络层。...所以废话就不多说了。...但是真的用了那么多了吗? 2、给每个物理网络分配一个网络号会使得路由表变太大而导致网络性能变坏。 3、两级IP不够灵活。 好吧,这既是段废话。...就直白点讲吧,前段时间手上有点闲钱,但是统统放在一张银行卡里,没去打理,没过多久钱就花光了,关键还不知道是怎么花的。

    90720

    如果生成了exe,那我还需要安装py环境不需要留一个chromedrive啊?

    大家好,是皮皮。 一、前言 前几天在Python最强王者交流群【黑科技·鼓包】问了一个Python打包的问题,一起来看看吧。...还有个问题想请教下,用pyinstaller生成的,如果生成了exe,那我还需要安装py环境不需要留一个chromedrive啊?...后来【小小明】补充道:这是以前的自动下载驱动的代码了,现在已经过时了。无法处理115以上版本的谷歌游览器。直接使用selenium4最新版,不指定位置就可以自动下载驱动, 顺利地解决了粉丝的问题。...三、总结 大家好,是皮皮。这篇文章主要盘点了一个Python函数处理的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

    14910

    “假一赔十”的4k 120Hz电视能买?研究完服了,水是真的

    所以,你一定也听说了前不久《Apex英雄》真的上线PS5的大消息: Emm……看到这个推送后,当场就愣了。 这是什么?最高只支持4k 60Hz??...但没想到的是,在辨别4k 120Hz电视时,却差点一头“栽”进电视厂商的套路中。...电视厂商套路你的“营销黑话” 事实上,并非所有标榜“4k 120Hz”的电视,都真的符合三点硬件要求:屏体、芯片、输入同时达到4k 120Hz标准。 第一层套路,往往是标榜了各种最新技术的屏体。...4k 120Hz电视,真的“白买了”? 话又说回来,最后也思考了一下,4k 120Hz电视究竟算不算白买。 真要算的话倒也没有。...所以,你也和我一样入手了4k 120Hz的电视?目前体验如何?

    51750

    不想做技术总监的项目经理,不是好程序员

    归根到底的问题就是:技术总监还要不要写代码了? 在18年12月前后,给你的回答可能截然不同。 18年12月,离开了相伴多年的公司,换了一个东家。 “要写代码",五个大字映在的胸腔。...因此,这让萌生了一个念头,是不是也该出去看看了。 在18年12月前,给你说上面那个问题(技术总监到底要不要写代码)的回答是,技术总监把控大方向就行了,写啥代码?哪来的时间给你?...挺懵逼的,还真没研究过,说你能提示下? 他笑了笑,说例如轮询。 想了下,回答说是配置upstream?...不需要这么精细?不需要这么频繁?大数据量报表每月一出就行了?那这样就无所谓时效性了。 面试最后,面试官问我对他们公司还有什么问题? 问了下如果入职后,将从事什么样的工作。...觉得还是比较契合当前迷茫期的目标的。 【真的是迷茫期,不知道干什么了。在老东家那里,最多也不过就是升个总监,养老罢了。技术上就完全与主流脱节、荒废了。】

    98320

    Python在手,天下有!

    Python真是一个“大众性”的IT软件呀~ Python在手,天下有!...“0基础小白真的可以学会Python?” “Python简单易上手,拥有简化人性化的语言。而且Python的通用性使它符合各种开发需求。” “Python相较于其他语言,有什么优势呢?”...“其实,Python是一个很高级有范的语言,举个例子:完成同一个任务,C语言要写1000行代码,Java只需要写100行,而Python可能只要20行。” (N妹:这个效率简直是质的飞跃呀!)...“Python一定要线下上课?该怎么学习Python呢?” “不一定,也可以通过书籍、网课自学。...NEXT学院特推出智能语音机器人实战课程 鹅厂一线大咖手把手带你0基础入门Python 仅¥0.02立抢1小时实战机器人项目课程 ?

    84930

    人工智能写手,好用

    王树义 读完需要 11 分钟 速读仅4分钟 有了这东西,作文还怎么判啊? ? 1 印象 之前给学生上课的时候,介绍过利用循环神经网络,仿照作家风格进行创作的机器学习模型。...的评价是: 望之,不似人语。 因为这种限制,人们并没有把“机器写作”当成一回事儿。 总觉得机器要写成那种以假乱真的高度,可能还需要等上很久远的一段时间。 然而,这世界变化快。...但是,你刚刚自己尝试过语言生成模型的威力之后,还会保持这么单纯的想法? 5 威胁 仅举一例。 互联网上,假新闻是一个非常严重的问题。...面对这种潜在威胁,我们真的已有完善的应对之策? 正因为这种威胁实际存在,数据伦理才愈发成为重要的研究课题。 ? 如果你做数据科学研究,这个方向大有可为。 6 魔盒 风险是显著的。...而技术的进步与发展,真的能够因为一家机构决定“不开放模型”的举措,就能停滞? 当然不会。 OpenAI 因为压力,不断释放出更为强大的开源模型。目前开放的预训练模型版本,达到了 774M 个参数。

    92720

    业务变化快,有必要写单测

    在前面一篇文章(单测无用论,这是真的?)中,提到判断单测是否适用的几个维度,其中有一个就是业务变化情况。理论上来说,业务变化快,改单测成本高,维护成本也高。...但事实真的是这样?针对这个问题,与单测群的小伙伴们进行了讨论,大家都非常积极地发表了看法。从投票结果来看,有 50% 的人觉得没必要,有 50% 的人觉得有必要。 笔者一开始是觉得可以不写的。...但如果交付速度提高了,可是交付质量下降了,可以接受想,对于有些规模的公司来说,交付质量一定比交付速度更重要。而对于一些小微或者创新业务来说,可能交付质量可以没那么重要,但是也不能太过于拉垮。...除非你的代码质量真的很高,高到及时不写单测一个 bug 都没有,那确实没必要写单测了。...所以,对于笔者来说,现在坚定认为 —— 业务变化快,也有必要写单测!不知道你们怎么看这个问题,欢迎在评论区留言与大家讨论~

    56720

    Linux和Windows下硬盘分区对拷和硬盘分区写0是怎么回事

    也可以直接拿②中已经拷贝过文件的新盘分区对拷到原盘分区(确认源和目标的扇区信息完全一致) 磁盘写0的注意事项: Linux里实现的命令比较简单 假如需要写0的盘是/dev/vdb 执行这条命令就可以...uuid为uuidgen命令新生成的uuid或更新为原来的uuid tune2fs /dev/vdb2 -U $new_uuid或$old_uuid Windows磁盘写0注意事项 一个没有初始化的磁盘里就真的没有数据...这种情况没有找到复现步骤,但我知道,因为D盘分区不在HD2下,一重启机器,这个D盘分区应该是会消失的,果然重启机器后D盘分区就不见了。...第三方磁盘分区软件操作不当或软件本身存在bug可能会导致丢失分区表,这时再来看这个问题:如果磁盘显示未初始化,难道磁盘里面就真的没有数据?不尽然。...Windows下试了很多工具,目前diskgenius自带的清除扇区数据的功能试用了,真的是全部写0,写0完成后,打开磁盘管理器时提示初始化。

    9.6K50

    代码洁癖系列(一):什么是整洁代码

    这是一个宏大的愿望,但我会一直努力净化所看到的每一行代码,并且希望能影响更多的人,让大家都写出整洁的代码。 在阅读本文之前,想先提两个问题: 你是程序员? 你想成为更好的程序员?...之后的一段时间,也将会从以下几个方面和大家分享,如何写出整洁的代码。 有意义的命名 什么是无意义的命名?...那么我们在考虑一下,为一个变量命名为name,那么在没有前后语境的情况下,你能想象出这个变量是用来做什么的?是一个人的name还是一个物品的name,是firstName还是lastName?...要不要写注释 大多数程序员都觉得写注释(文档)很麻烦,觉得自己的工作就是实现功能,自己写的代码自己能看懂就行。事实上真的是这样,他们真的能看懂自己三个月前写的代码?...另一种程序员知道要写注释,但是他们写的注释都是诸如:“这是一个方法”、“这是一个循环”……这样的注释写出来真的有意义

    94330

    关于 Echo 项目该如何写在简历上

    最近秋招在即,可能有不少小伙伴会把这个项目写在简历上,对于校招来说确实是绰绰有余了,对于社招来讲的话,觉得可能就是个弟弟项目,没啥亮点,难度不高,就是一些业务逻辑罢了,所以准备社招的小伙伴最好再扩充一下...至于不需要代码开源,不需要代码上线,那当然有的话是最好的,毕竟放在简历上有个可以点开的地址,也能让面试官知道这确实是你自己做的东西。...项目收获: 项目收获觉得其实没啥必要写出来,如果简历上的内容超过一页但又不够俩页的话,一定会把项目收获这块给删了凑成一页(狗头)。...当然了,如果你真的有一些特别的收获和心得体会,写上去的话其实也给了面试官一个进一步了解你的机会。...另外,如果是某些大型项目,各位只是做了项目中的某一个部分,需要写清楚你在组内担任的角色,具体做了啥,比如你是小组的后端开发,负责点赞模块啥的。

    48210
    领券