问题标签 [ng-modules]

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 回答
383 浏览

angular - 在组件级别与根级别注入的服务有什么区别?

我正在 Angular5 上开发一个项目,我总是看到任何服务的提供者都在 ngModule 部分声明,我用 Augury 调试器用完并检查 Injector Graph 所有依赖项都来自根。

按组件分配服务提供者有什么好处?随着构建时间或更快的渲染,它们会提高应用程序的质量吗?

提前致谢!

0 投票
1 回答
39 浏览

angular - 如何在角度延迟加载模块中延迟加载模块?

这是一个角度模块问题。

我有几个模块导出为 npm-packages,我的应用程序都需要它们。让我们称它们为Inner模块Outer

在应用程序中,我配置了Inner,并使用它的InnerModuleService.

OuterModule我也有InnerModule依赖,需要与InnerModuleService应用程序相同。

但我不知道如何InnerModule从我的应用程序中传递配置。有人可以帮我吗?

这是更具示范性的片段

0 投票
0 回答
35 浏览

angular - 我们如何从依赖模块配置依赖角度模块中的值

我有一个CoreModule(它提供了常见的功能,比如在上面提供定制的包装服务HttpClient等 - 作为 npm 包)和AppModule(作为 npm 包安装的 Angular 应用CoreModule程序)。

CoreModule有很多关于配置的东西(即login URL, base URL for REST endpoints等)。因此,每当我需要从服务器获取数据时,我只需将其提供给endpoint URL暴露的服务CoreModule,然后它会处理其余的事情,例如创建完整的请求 URL、进行 ajax 调用、提供响应等。

现在,有什么方法可以让我从我base URL的?CoreModuleAppModule

在 Angular 1.x 中,我们曾经有过value配方。所以,我们可以这样做

Angular 4+ 中是否有任何类似(或不同)的方式来实现类似的行为?

问题是,一旦我从客户端应用程序更新/覆盖baseURL(或任何其他配置变量),它也应该更新CoreModule。因此,如果任何其他服务/组件尝试访问该变量(甚至从CoreModule),它应该读取更新后的值。

0 投票
0 回答
1306 浏览

angular - Understanding Angular module scope (for ngx-bootstrap)

I'm kinda new to Angular and am having issues integrating ngx-bootstrap in my project when using ng modules...

To be more brief - Everything works properly when I add html directly in app.component.html but won't work when I add the same code in app-component and declare it inside app.component.html


Steps taken :

  1. Used Angular CLI 1.7.4 to generate a new project (with Angular 5.2.9)

  2. Used npm install --save bootstrap ngx-bootstrap and imported bootstrap.min.css in my style.css

  3. Created a new module called 'app-bootstrap.module.ts' in src/app,and included the following in it :

At this point, if I include the html code e.g. say for the dropdown button in app.component.html (after importing above module too), it works as expected. However, this is not what I want, so I went along with following steps.

  1. Created a new component in 'dropdown' under src/app and included the following in it dropdown.component.html :

  1. Created a module called custom-components.module.ts in src/app and declared dropdown component inside it :

  1. Imported customComponentsModule in app.module.ts as follows :

  1. Added <app-dropdown></app-dropdown> inside app.components.html

  2. When I run ng serve here, the button shows up all styled up but when I click on it, nothing happens. As mentioned before, dropdown works when I put the same code in app.component.html - this lead me to believe there is some scope issue I am not getting. Frustratingly enough, no errors show up.

Note :

  1. I've used a 'dropdown' component just for sake of brevity.

  2. If I have missed adding something important, kindly ask for same in comments and I'll provide it.

Apologies for the big post; any help would be much appreciated, thank you!

0 投票
1 回答
774 浏览

angular - 如何在 Angular 5+ 的模块级别访问 SharedService

我对 Angular5/TypeScript 比较陌生,所以我为这个(也许)微不足道的问题道歉。

我正在尝试实现我打算使用的身份验证服务,以便让我的 Angular5 前端使用一些由 wordpress 后端公开的 REST API。

到目前为止,该服务已实施并正在运行。我现在缺少的是一种将登录数据注入 REST 请求的方法。

更准确地说,我知道该怎么做,但我现在不知道如何访问我之前存储在共享服务中的登录信息。

但让我更具体一点,让我分享我的代码:

正如您在 //JWT 令牌注入的代码中看到的那样,我需要指定一个令牌获取器,该令牌获取器在我的 auth.service 中实现。

在组件文件中,我可以通过将服务作为构造函数的参数注入来访问其公共方法,如下所示:

但我似乎没有找到在模块级别访问服务方法的方法!

我知道,我可以对我的 tokenGetter 使用静态访问,并在类级别而不是实例级别移动所有内容(例如:),AuthService.getToken但我认为有一种更好、更优雅的方式来访问该getToken()方法。

提前感谢您的任何提示/帮助。

0 投票
1 回答
1239 浏览

angular - Angular aot build:动态 forRoot 参数导致未定义

我需要将配置(对象数组)发送到功能模块中的服务,并且需要动态计算此配置。我用过forRoot,它工作得很好,直到我用--aot.

问题:使用--aot,配置结果为undefined

这是我在 stackblitz 上制作的示例的链接: https ://stackblitz.com/edit/angular-aot-forroot-error

!!它可以在 stackblitz 上按需要工作,因为它不是用 aot 构建的!但是,如果您使用 aot 在本地构建它,GetConfigService则会引发错误,因为config它是未定义的。

重要部分:

应用模块:

WithParametersdModule:

获取配置服务:

感谢您的帮助或解释我做错了什么。

0 投票
2 回答
1548 浏览

angular - Angular - HttpClientModule 是否应该在 CoreModule 的 Exports 数组中?

好吧,我正在按照以下基础架构构建我的项目:

  • 功能模块。
  • 核心模块。
  • 共享模块。

但是有一点我还不够清楚。

据我所知,HttpClientModule应该是CoreModule因为...它提供了HttpClient向服务器发出 HTTP 请求的服务。

现在,imports数组允许 Angular 模块使用其他模块提供的功能,并且exports数组允许 Angular 模块公开它的一些功能。

我有这个CoreModule

现在,既然 myCoreModule是在 my 中导入的,那么andAppModule不应该也被导出吗?就像.HttpClientModuleBrowserAnimationsModuleRouterModule

我看到CoreModuleandSharedModule喜欢某种桥梁。

SharedModule我来说更有意义:

SharedModule导入然后MatButtonModule导出它,以便其他模块可以使用它。

不应该CoreModule是一样的吗?因为App运行良好;但是,我处于开发模式。

希望我足够清楚,有人可以帮助我消除这个疑问。

0 投票
0 回答
87 浏览

css - 无法为 ng-datepicker 更改或提供自定义 CSS

我正在尝试为 bs-datepicker 提供自定义 CSS。但是,它不接受来自 component.css 的任何更改。我尝试在 node_modules 的 bs-datepicker 的节点文件中添加一个类名,并使用该类名进行 css 更改,但是当我使用 ng-build 构建应用程序时,这些更改没有反映出来。无论我在节点模块中进行什么更改,它们都反映在 ng serve 本地视图中,但在 ng-build 中,没有任何更改反映。bs-datepicker 的图片附在这里

我想更改日期选择器的定位、填充和边距。

这个 CSS 我想给我的 bs-datepicker

日期选择器绑定到输入,如

0 投票
1 回答
73 浏览

angular - 基于 Angular 项目的 Ionic 未找到组件工厂

错误:

错误:未找到 LangPopComponent 的组件工厂。你把它添加到@NgModule.entryComponents 了吗?

我的app.module.ts

我的component.module.ts

在另一个page.ts(主页)中:

当我想使用 Ionic 提供的弹出框库呈现组件时会产生错误。有任何想法吗?

0 投票
2 回答
695 浏览

angular - 我不明白 Angular NgModules

我看了几个视频来解释 NgModules 和关于 NgModules 的官方 Angular 文档,但我仍然了解它是如何工作的。

我知道组件进入declarations,模块进入imports和服务进入providers我还听说从 Angular v6 开始,服务根本不需要声明?)。我不明白什么时候以及为什么要创建“子 NgModules”,例如auth.module.ts.

  • 我为什么要创建那些子 NgModule?
  • 与仅使用相比有什么好处app.modules.ts
  • 我应该将那些子 NgModules 导入app.modules.ts吗?
  • 关于 NgModules,我还有什么需要了解的吗?

谢谢