问题标签 [ng-annotate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - 使用 AngularJS 进行依赖注入注释的最佳实践是什么?
所以感谢 ng-annotate,现在我们可以成功地缩小我们的代码,如下所示:
与此表格相比,此表格是否有任何优势:
后一种显式依赖声明似乎是常态,但在这一点上继续使用它有什么好处或理由吗?
angularjs - SystemJS 插件可以修改已经转译的文件吗?
在尝试让 Angular (1.x) 与 systemjs 一起工作时,我意识到目前没有能力(据我所知)自动插入$inject
到 Angular 组件中,即使函数的参数被破坏,这也能让组件保持工作状态缩小器。手动创建$inject
注释是乏味的、容易出错的并且违反了DRY原则。
有一个成熟的 npm 模块ng-annotate
可以解决这个问题,并在许多类似的情况下用于捆绑。当我一直在探索 SystemJS 时,我看到有一个插件系统包括翻译源代码的能力,这正是ng-annotate
它的功能。
不过,据我所知,SystemJS 只让您能够将特定的文件扩展名映射到单个加载器,并且所有插件示例都支持新的文件类型。我想做的是对 SystemJS 的转译过程的输出进行后处理,而不是添加新的文件类型。看起来 SystemJS 应该能够做到这一点,因为它有一个处理管道,但我不太清楚如何以正确的方式连接它。现在我正在使用 Browserify 来实现相同的效果,但我最终得到了一组相当复杂的构建任务,如果可能的话,我想用 SystemJS 来简化它。
能够ng-annotate
在加载器管道中使用 SystemJS 的其他策略也将受到赞赏。
angularjs - 使用模块构造函数进行 ng-annotate
是否可以将ng-annotate与角度模块构造一起使用?
例如,
使用各种依赖项进行注释。但是,我无法获得相同的模块实例化,因为删除["ui.router"]
数组会将模块构造函数更改为模块 getter。
此外,我找不到关于这个特定主题的文档。
angularjs - 在 gulp 任务之间传递数据而不写入磁盘
我正在尝试注释和缩小 systemjs 角度项目。Systemjs 带有一个构建功能,但它不是“gulp-aware”。可以向构建器传递一个选项来缩小,但 ng-annotate 没有一个选项,所以我需要 gulp 来代替我做这两个。
我怎样才能将以上内容与
我可以将第一个任务输出到一个文件,然后再.src
输入,但这不是最好的方法吗?
angularjs - grunt-ng-注释所有 angularjs 文件
我想通过 grunt 在我项目的所有角度文件上运行 ng-annotate。
找不到此选项。
我只有通过指定文件名进行注释的选项。
我需要更通用的东西,可以在特定目录上递归运行。
node.js - Browserify + browserify-ngannotate + Tsify 不工作
我正在使用带有 browserify 和 tsify 的 gulp。这一直运作良好。然后我决定使用 browserify-ngannotate 添加 ng-annotate。
我添加了 ng-annotate browserify 转换,但似乎如果将 tsify 作为插件添加,则永远不会调用 ng-annotate 转换。
如果我删除 tsify 插件,则会调用 ng-annote。我玩过并切换了插件/转换注册。我在这里遗漏了什么,还是应该去 browserify/tsify 记录问题?
angularjs - 无法实例化 angularjs 模块。因为它说它没有使用显式注释并且不能在严格模式下调用
我希望在我的应用程序中使用 ng-annotate 和以下语法(使用 ng-strict-di)来避免缩小问题,但我在控制台中不断收到此错误,就好像我错过了 /** ng@Inject */ 评论在 routeConfig 函数之上。
我错过了什么?
这是错误:
这是路由配置文件。
非常感谢您的帮助。
angularjs - Webpack、Angular 和 ng-annotate-loader — 注释 Angular 文件时遇到问题
我正在尝试使用 Webpack 捆绑 Angular 应用程序,并且在缩小捆绑包后遇到问题。此语法带有依赖项的手动注释,适用于:
虽然此语法会产生$injector:modulerr
错误:
我正在为 Webpack 使用 ng-annotate-loader。这是配置文件的相关部分:
但这并不能解决[$injector:modulerr]
错误。试图用 更改loader: 'ng-annotate!babel?stage=1'
线路loaders: ['ng-annotate', 'babel?stage=1']
,但没有任何改善。你能建议我如何解决它吗?
编辑:最终发现我的问题基本上是Angular ng annotate does not work with babel的重复
EDIT2:有人向我指出,ng-annotate 未能注释 angular 模块的 .config,因为我将 angular 作为 es6 模块导入,而不是将其声明为变量,这显然混淆了 ng-annotate。
javascript - Babel 和解构的 ng-annotate 错误
使用 Babel 转译为 ES6 时出现奇怪的错误,ng-annotate
不喜欢解构。我将源代码复制到在线 babel 编译器中,它工作正常。ng-annotate
在我的 gulp 管道链中注释掉可以消除错误。删除/* @ngAnnotate */
文件中的注释并手动注入也不会改变任何内容。
吞咽部分:
有问题的来源:
错误来自以下依赖项ng-annotate
:
stringmap.js
有问题的功能:
注销key
并value
在上述函数中返回:
显然这个key
论点是未定义的,但它为什么还要关心呢?