问题标签 [angular-compiler]

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.

0 投票
1 回答
245 浏览

angular - 使用角度编译器处理文件时 Meteor 构建失败:createCompilerHost 不是函数

当我为部署执行 'meteor build .../output --server-only' 时,出现错误:this.compilerCli.createCompilerHost is not a function

我将项目 Meteor@1.5.4.1 升级为 Meteor@1.6.1.1,去掉了 angular2-compilers 并添加了 angular-compilers,并做了相关的修改。该项目运行良好,但是,用于部署的构建会引发错误。虽然流星版本是 1.5.4.1,但没有问题。

Ubuntu版本:Ubuntu 17.10

流星版本:METEOR@1.6.1.1

角度版本:4.4.7

流星包:

我很感激帮助。问候!

0 投票
1 回答
641 浏览

angular6 - 使用 AOT 时出现 Angular 6 编译错误

我最近被迫使用 AOT 并且在生产中没有正确编译模板。当我尝试一个空白项目时,它运行良好,但在我的巨型应用程序中存在问题。

像这样的东西:

编译为

但是,在我的巨型应用程序中,它是这样编译的:

通过再分析一点,我发现这container被视为 anchorDef( ɵand) 而不是queryDef( ɵqud)。什么可能导致此错误?我如何进一步研究以找出anchorDef在这种情况下输出 an 的原因。

0 投票
0 回答
318 浏览

angular - 在Angular中实例化时如何将[formControl]附加到类型

我正在尝试将 a [formControl](和其他顶级属性)附加到我使用 a 创建的对象,ComponentFactoryResolver以便使用 a 处理表单逻辑ControlValueAccessor

基本上我这样做:

我想出这一点的唯一方法是进入 JIT 并使用 RuntimeCompiler,动态创建一个模板,如<my-component [formControl]="args" [otherValuableAttribute]="true"></my-component>. 编译它,然后获取实例。

但是,如果不关闭 AOT,我将无法运行它。

我在这里最好的选择是什么?

0 投票
2 回答
1899 浏览

angular - 为什么使用 router-outlet 访问其他模块的组件不需要添加到导出

我不明白router-outletmodule's exports array编译策略之间的区别。

在此处输入图像描述

为什么我们需要将它添加到导出数组中,Angular 无法自动生成在模块中定义的组件,例如router-outlet.


我知道如果我想使用其他模块的组件,它需要添加到导出中。

活生生的例子


如果我通过路由访问组件(http://example.domain.com/comp1),它不需要导出,它可以工作。

带有路由的实时示例


谢谢大家的回答,这是我理解的总结:

通过模块的导出数组加载组件

在此处输入图像描述

通过路由器加载组件

在此处输入图像描述

0 投票
1 回答
8888 浏览

angular5 - _lazy_route_resource 惰性命名空间对象

我正在使用角度编译器: const AngularCompilerPlugin = require('@ngtools/webpack').AngularCompilerPlugin;

使用这些编译器选项:

我的 package.json 的相关部分是:

我的 angularCompilerPlugin 配置是:

使用这些配置,我得到:

请任何方向或帮助。

0 投票
0 回答
383 浏览

angular - 错误:`运行时编译器未加载`在aot模式下

在我的 Angular 6 项目中,我想将所有路线定义为路线DashboardModule的子项,如下面的代码profileAppModule

此代码使用 JIT 编译器运行(aot:falseangular.json文件中),但使用 AOT 编译器(while )给出运行时编译器未加载aot:true错误。

所以我的问题是,有没有办法在没有延迟加载的情况下将路由加载DashboardModule's为配置文件路由的子级?AppModuleDashboardModule

0 投票
2 回答
2249 浏览

angular - Angular:如何在动态组件中使用共享模块?

我在 Angular v6 中使用compileModuleAndAllComponentsAsync 的 Angular 编译器创建动态组件,下面的代码相同。

一切正常,但是在导入任何共享模块或自定义模块时出现错误。

在此处输入图像描述

0 投票
1 回答
3198 浏览

angular - Angular:如何导入 JitCompilerFactory?

如果我使用 AOT 编译,将无法进行动态编译。所以我需要将编译器加载到浏览器中。那么我该如何加载呢?如果我使用

但是,导入后JitCompilerFactory我收到以下错误:

“在“角度/编译器”中找不到导出“JitCompilerFactory”

那么我现在需要从中导入它以'angular/platform-browser-dynamic'进行动态编译吗?

0 投票
0 回答
516 浏览

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 插件。

0 投票
1 回答
27 浏览

angularjs - 以编程方式将 bs-popover 编译为 div 元素

有没有机会我可以将一个bs-popover元素编译成div我在代码中用 angularjs 创建的元素,然后将它添加到 DOM 以便我的弹出框工作?

所以基本上我希望bs-popover将其编译到以这种方式创建的菜单元素中

我可以在 HTML 中添加这些属性,但事实是我的逻辑完全不同,我必须在代码中创建它。有什么想法吗?