问题标签 [ngtools]
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.
angular - 必须有要重构的源文件中的错误
webpack编译的奇怪错误:
必须有要重构的源文件中的错误。
查看源代码,我在以下位置找到了此消息./node_modules/@ngtools/refactor.js
:
@ngtools webpack 插件的配置非常简单:
angular - AOT - Angular 6 - 指令 SomeComponent,预期 0 个参数,但得到 1。对于自制组件
当我想使用以下包版本在 AOT 中编译我当前的项目时,我遇到了问题:
- @ngtools/webpack@6.0.3
- @angular@latest (6.0.2)
- Webpack@4.0.0
我的 webpack 和 tsconfig.json 配置可以在这里找到
我遇到了一些与模板上使用的private
/protected
范围相关的问题,以及一些提取参数提供给一些真正不需要它的函数(例如未在 EventBinding 上使用的 $event)。
现在我有以下列表,我找不到我的问题在哪里:
/path/to/app/header/main-header/main-header.component.html(85,7): : 指令 TableOfContentComponent,预期 0 个参数,但得到 1。 (1,1): : 指令 TableOfContentComponent,预期 0争论,但得到 1。
我的main-header.component.html
文件包含:// main-header.component.html
而且 myTableOfContentComponent
不包含任何@Input
属性。
/path/to/app/header/main-header/hamburger-menu/hamburger-menu.component.html(125,5): : 指令 SliderComponent,预期 0 个参数,但得到 1 个。 (1,1): : 指令SliderComponent,预期 0 个参数,但得到 1 个。
我hamburger-menu.component.html
的代码接近上述代码:
我的SliderComponent
样子:
/path/to/app/header/main-header/medias/dialogs/image-dialog.component.html(34,5): : 指令 CarouselComponent,预期 0 个参数,但得到 1. (1,1): : 指令CarouselComponent,预期 0 个参数,但得到 1 个。
真的很接近前一个,我认为问题是一样的。
/path/to/app/document/page/page.component.html(7,9): : 指令 InfinityPageScrollComponent,预期 0 个参数,但得到 1。 (1,1): : 指令 InfinityPageScrollComponent,预期 0 个参数,但得到1.
在这里我们没有任何输入InfinityPageScrollComponent
,标签是这样调用的<ps-infinity-page-scroll></ps-infinity-page-scroll>
我准确地说,当我在我的 webpack 上禁用 AOT 时,一切都像魅力一样工作。
我试图在AoT Do's 和 Don'ts上找到解决方案,但没有任何结果。
我还注意到,如果我禁用fullTemplateTypeCheck
我将面临大约 18 000 个错误,其中包含一些隐含的任何类型以及更奇怪、未定义的属性,用于在构造函数上声明的服务。
--- 编辑 1:为抽象类提供代码:UnsubscribeHelper
---
抽象类的代码UnsubscribeHelper
:
angular - webpack AngularCompilerPlugin hostReplacementPaths 选项不起作用
在我更新到 Angular6 并@ngtools/webpack
从“6.0.0-beta.8”更新到“6.1.2”后,我发现hostReplacementPaths选项不再起作用。
通常它会替换正确的 env 文件:
但现在没有了。
我对@ngtools/webpack 进行了深入调试,发现normalize
这里的功能
https://github.com/angular/angular-cli/blob/master/packages/ngtools/webpack/src/virtual_file_system_decorator.ts#L188
不起作用
仍然找不到它出了什么问题。也许有人已经解决了这个问题?
在 angular-cli repo 中创建了一个问题 - https://github.com/angular/angular-cli/issues/11801
angular - Angular 6 - 库上的 AOT 编译,用作主应用程序中的延迟加载插件
我正在开发一个在 Angular 6 中完成的基于插件的应用程序。我有 2 个项目,一个主项目和一个我开发插件的 lib 项目。插件使用 ng build --prod 构建到 UMD 中,然后使用 SystemJs 加载到主应用程序中,在主应用程序中使用 Compiler 类在运行时进行编译(构建的插件部署在另一台服务器上)。主应用程序在构建时不包含对 lib 项目的引用。
只要我在开发模式下运行主应用程序,它就可以正常工作。当我在 prod 中尝试它时,由于 JIT 编译器在 prod 构建中被删除,它崩溃并显示“错误:未加载运行时编译器”。
我的问题是:是否可以提前构建一个 Angular 6 Cli Lib 项目(或者不一定是一个 cli lib 项目),使用 SystemJs 加载它,然后只使用组件工厂来创建动态组件?我怎么能做那个构建?
我无法将 lib 与主应用程序一起构建,因为最终目标是让其他开发人员为应用程序创建插件,并且并非所有组件都将在运行时使用。
如果没有 AOT,我无法保留主应用程序,因为它会变得非常大,并且性能会受到很大影响。
我也知道 Angular Elements,但我也希望能够创建 AOT lib 插件。
angular - @ngtools/webpack 不通过入口点导入构建
我直接在 angular-app 中使用@ngtools/webpack(没有 angular-cli),我得到了意想不到的行为。Aot 插件构建项目中的所有 ts 文件,但某些文件不是由入口点文件 (main.ts) 导入的。例如 - ts-loader 仅构建在入口点文件 (main.ts) 中通过导入找到的文件。这是错误还是功能?
我创建了 mini-repo:https ://github.com/alxpsr/ngtools-unexpected 运行 npm run build:aot 并且出现错误。但是如果你运行 npm run build:tsloader - 构建不会有错误。
如果这不是错误,请告诉我这两个版本之间有什么区别?
PS我知道tsconfig.json中的文件和包含选项,我可以在那里更清楚地指定文件。我想了解这两个版本之间的区别。^_^
angular - 减少来自 @ngtools/webpack 的日志记录
我想减少使用 @ngtools/webpack 运行生产 AoT Angular 构建时生成的日志记录量。目前,它正在生成一个充满“解析模块”文本的许多 MB 大日志。我是否缺少任何选项来禁用或减少此日志记录?
我尝试设置 webpack stats: "none" 并没有减少此日志记录。
我正在使用 @ngtools/webpack 的 7.3.9 版和 webpack 的 4.33.0 版。
angular-aot - @ngtools/webpack 从 Angular4 迁移到 Angular7 后不编译项目代码
我将 angular4 应用程序迁移到 Angular7 并解决了 dev 和 prod 构建,但 AOT 构建没有转换应用程序代码(app.module)。主包和 polyfill 包大小各只有 1 kb。查看输出控制台,它似乎没有编译任何模块。
webpack.config.js :
tsconfig.webpack.json:
Angular-V7 Webpack - 4 节点 - 8.11.1
webpack - --mode 开发错误:NormalModuleFactory.beforeResolve 不再是瀑布挂钩
我一起使用 webpack 5 和 @ngtools/webpack 来构建 Angular 应用程序。当我运行时webpack --mode development
出现以下错误:
请注意,在我使用 @ngtools/webpack 9.0.0 之前,此时我遇到了另一个错误。
不是版本是 9.1.4 并出现错误。
这是整个依赖项:
如果我将 webpack 版本更新到 4.43.0 一切正常。看来 webpack 和 @ngtools/webpack 不能一起工作。
这里是否有我错过的任何其他信息可能对使用 webpack 5 设置这个项目有用?