我可以使用angularJS(1.x)中的angular8组件作为节点模块吗



我正在开发一个angular 8应用程序,当用户点击一个按钮时,它应该重定向到一个完全不同的web应用程序的供应商门户(diff Url(,当用户重定向到供应商页面时,用户应该看到我在web应用程序中看到的相同的页眉、页脚和导航。但供应商应用程序在angularJS(1.x(上。

所以我的问题是,我可以将我的角度页眉、页脚、导航(导航由一些SSO逻辑组成(转换为节点模块,并让我的供应商在他们的angularJS(1.x(应用程序中使用它们吗?

如果我们不能在angularJS(1.x(中使用angular8组件,有人能提出更好的方法吗?

更新:我们可以将Angular8项目/组件转换为一个独立的JS文件,并要求供应商在他们的应用程序中加载JS文件吗?因此这个JS应该包含在其页面中替换/注入的逻辑。例如:我们要求供应商在他们的页面中创建一个元素,在我们的JS文件中,我们需要查找";自定义标题";Id并替换为我们的内容?

那么我们可以在Angular8应用程序中编写自定义代码,并将其导出为独立的JS文件吗?

您不能在angularjs中使用angular8组件。因为这些框架彼此非常不同。

不能直接在angularJs上使用Angular组件。

但是您可以使用@angular/elements将ng组件或ng应用程序转换为Web组件。

Web组件与框架无关,这意味着它们可以在用于创建它们的框架的上下文之外使用。几乎所有的现代浏览器都准备好处理它们,如果你想支持更多的浏览器,可以使用polyfill。

Angular元素的详细信息:https://angular.io/guide/elements

以下是如何做到这一点的指南:https://www.freecodecamp.org/news/how-to-create-angular-6-custom-elements-web-components-c88814dc6e0a/

编辑:更改了指南,另一个不太好。

最新更新