微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在角度4.4应用程序中获取并加载远程组件/模块

这是我正在努力实现的目标:
我想使用“插件”创建一个应用程序,插件我的意思是:

一个角度组件/模块,可以部署在远程主机上并显示在我的应用程序中.

看起来我不能直接用webpack做这样的事情,我应该使用SystemJs来动态加载模块.

欢迎任何建议使用SystemJs和Webpack(ng cli),如何调用远程模块并加载它们的示例.

是的,您需要将systemjs添加到angular-cli并使用它来加载模块.然后,您可以使用componentFactoryResolver来解析模块中所需的组件.要将systemjs添加到项目中,请安装它:
npm i systemjs

以及如下的angular-cli.json:

"scripts": [
    "../node_modules/systemjs/dist/system.src.js"
],

还要在页面添加指向scripts.js的链接

这将加载systemjs,它将作为全局对象使用.然后你可以像这样使用它:

declare var SystemJS;

@Component({
  selector: 'app-root',templateUrl: './app.component.html',styleUrls: ['./app.component.css']
})
export class AppComponent {
  constructor() {
    SystemJS.load(...);
  }

有关如何使用SystemJS加载模块的详细信息,请参阅How to load dynamic external components into Angular application answer

原文地址:https://www.jb51.cc/angularjs/143631.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐