问题标签 [shared-module]

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

vb.net - VB.NET Web 应用程序中模块构造函数的执行顺序

我试图了解 Web 应用程序环境中的执行顺序 - 基本上我正在使用用于各种实用功能的模块,包括记录和初始化各种全局/共享变量。该网站有几个独立的页面和一些网络服务。

我们在网站上遇到了一些问题,其中一位开发人员建议必须首先执行一段代码来初始化一个关键属性(这发生在模块构造函数中,属性本身没有在模块中定义,但是而不是在第 3 方 DLL 上,模块只是在构造函数中启动它)没有首先执行。该开发人员背后的原因是“只有在打开的页面上找到对它的引用时才会调用模块的构造函数。

所以让我们想象一下我们的 Web 应用程序上有 2 个页面。只有 Page2 引用了 MyModule。所以这个开发者的逻辑是,如果网站重新启动并且第一次调用是 Page1,它没有对模块的任何引用,因此没有调用构造函数,因此它不会在第 3 方初始化这个属性动态链接库。因此,Page1 尝试使用具有未初始化属性的 3rd 方 DLL,但它失败了。

我的反驳是:模块是一个共享类,它的构造函数也是共享的,在加载 Web 应用程序的程序集时正在初始化。根据我的论点,首先加载哪个页面并不重要,构造函数在程序集加载时启动第 3 方工具,因此问题出在其他地方。

我是对的还是错的?我找不到我的问题的答案,只是一些关于 Module 与 C# 静态类相似但又不同的信息。

谢谢

0 投票
1 回答
237 浏览

angular - 共享模块导出

我在一个名为“按钮模块”的模块中有某些组件,我想在我自己的名为“产品模块”的自定义模块中使用它们。按钮模块中的组件是一个“下拉按钮”组件。我知道我必须创建一个共享模块文件,然后在该模块中导出这些组件。但是我有点困惑,因为我不知道我是否创建了一个共享模块,那么我是否还需要在两个模块的声明中添加这些组件,即按钮和产品模块?建模共享模块文件的完美方法是什么?这是我的代码

按钮.module.ts

产品.module.ts

0 投票
0 回答
42 浏览

angular - 从子模块访问父功能

如何在应用程序的共享模块中正确设置子模块而不会收到循环依赖警告,或者在模块中有模块是不好的做法?

我有一个共享模块,其中包含跨应用程序的共享功能。在该共享模块中,我有一个模块需要访问共享模块中的管道。在下面的示例中,SchedulerModule 需要访问在 SharedModule 中声明的 DigitToHourPipe。

我是因为模块中有模块而愚蠢还是我只是做错了什么?

0 投票
2 回答
104 浏览

angular - 无法使用共享服务将 Observable 值获取到其他模块组件中

请查看此 GitHub 存储库https://github.com/nileshzala005/Service-demo

userService在根级别注册。

我想在's中获得getUserLogin可观察的价值。当用户单击按钮时,将从.SharedModuleUserComponentHomeComponentHomeModule

UserService在根级别:

HomeComponentHomeModule

UserComponentSharedModule

控制台日志

0 投票
1 回答
653 浏览

angular - 我应该将模块添加到 SharedModule - Angular 中的 Imports 中吗?

这是我的共享模块

请注意,我Imports只添加了CommonModuleand IconModule。我这样做是因为我在我的RequiredActionDirective. 但是Exports有更多的模块,因为将被其他导入的模块使用SharedModule

问题:我是否正确地认为我不需要添加模块,Imports除非我想直接使用它们SharedModule?或者将来可能会出现一些我目前不知道的问题,因为现在一切正常?

0 投票
1 回答
377 浏览

angular - Angular 共享模块导出由另一个模块导入的组件

我有 3 个模块。让我们称他们为StoreModule, BookModule, PaperModule. 商店卖书,所以商店用书。书由纸组成,因此使用纸张,与商店使用的纸张完全相同。商店也使用纸张。问题来了!现在这个角度的现实生活示例:

paper.module.ts

到目前为止一切顺利,没有角度错误。

book.module.ts

在这里,book.component.html看起来像这样:

一切都还好,没有错误。但是当我们想同时使用两者时(不确定我们是否都需要,也许我们只需要纸,也许也需要书):

store.module.ts

这是我得到的错误:

错误:未捕获(承诺中):错误:PaperComponent 类型是 2 个模块声明的一部分:BookModule 和 StoreModule!请考虑将 PaperComponent 移至导入 BookModule 和 StoreModule 的更高模块。您还可以创建一个新的 NgModule,它导出并包含 PaperComponent,然后将该 NgModule 导入 BookModule 和 StoreModule。

为了导出两个组件(BookComponent 和 PaperComponent),我怎么能一直构建它,以便我可以在其他模块中使用它们?我也想让 BookModule 和 Storemodule 可以重用 PaperComponent。对于某些模块,我只需要纸张,但对于其他一些模块,我还需要包含纸张的书。我希望你能理解我的问题!

0 投票
1 回答
144 浏览

angular - Angular:共享模块会使应用程序膨胀吗?

我正在使用 Angular 8。我有一个共享模块。一些模块只使用共享模块中的一两个组件。Angular 是否总是导入整个共享模块,还是只导入使用过的组件并通过摇晃树删除其他组件?

此外,如果一组不同的组件使用相同的组件/服务/模块,是让它们拥有自己的共享模块还是一个共享模块更好?

0 投票
3 回答
238 浏览

angular - 访问共享模块中的组件功能

我有一个共享模块,其中包含常见组件,例如标题和通知组件。我有另一个名为 ProductModule 的模块,它使用共享模块中的通知组件并调用通知组件中定义的函数。

shared.module.ts

通知组件.ts

在我的延迟加载productModuel中,我已经导入了我sharedModule的如下。

在我的TaxConfigurationComponent中,我想使用通知组件并调用 openSnackBar 函数。

TaxConfiguration.component.ts

但是,我在浏览器控制台中遇到了错误。

错误错误:未捕获(承诺):NullInjectorError:R3InjectorError(ProductManagementModule)[NotificationComponent -> NotificationComponent -> NotificationComponent -> NotificationComponent]:NullInjectorError:NotificationComponent 没有提供者!

0 投票
1 回答
254 浏览

dynamic - Ionic5:使用 sharedModule 在所有应用页面上设置页脚并从 app.component 控制它(开/关)

我使用带有菜单的 Ionic5 创建了一个新应用程序。我正在尝试在多个页面上使用页脚(现在仅在主页上)。首先,我创建了一个 SharedModule 并导入到 app.module.ts 的导入数组中。我在 shared.module.ts 的声明和导出数组中添加了页脚组件。我还在每个 page.module.ts 的导入数组中添加了 SharedModule,最后<app-footer>在每个 page.html 中添加。它按预期工作,在所有页面中显示页脚。但是现在我需要从我的 app.component 控制(打开/关闭)此页脚,以响应特定事件,例如,当互联网不可用时(这部分不是问题)。

页脚.component.ts

FooterEnabled 变量控制是否显示页脚并且必须可以从 app.component 修改

页脚.component.html

sharedfooter.module.ts

app.module.ts

app.component.ts

home.module.ts(例如)

我已经尝试过在实现 observables 的 footer.component 和 app.component.ts 中导入的服务,但它不起作用。我会感谢你的贡献!!

0 投票
1 回答
595 浏览

angular - SharedModule Angular 的问题出现 Error error NG8001: 'app-master-panel' is not a known element

我在使用 SharedModule 的 Angular 11 中遇到问题。一切都配置好,但即使配置正确,我仍然收到此消息。我用声明和导出的共享组件配置了我的 SharedModule,然后我在 AppComponent 和 DashBoardComponent 中导入了但是当我使用 MasterPanelComponent 到 DashboardComponent 时出现错误。为什么?

共享模块

应用模块

仪表板模块