【发布时间】:2020-12-04 16:08:09
【问题描述】:
我有一个 angularjs 1.7 组件,我需要升级到 angular 8 组件。它有一个外部脚本,我无法修改。该脚本将 iframe 插入到 div 中,并且它需要组件的一些设置来自定义 iframe。
旧组件代码:
angular.module('myApp.shared').component("userExternal", {
template: '<div id="userIframe"></div>',
controller: function ($window) {
this.scriptUrl = "//myurl/widget/addIframe.js";
this.$onInit = function () {
$window.UserSettings = [];
$window.UserSettings.push(['set', {
btn_color: '#008A00',
bg_color: 'white'
}]);
});
};
}
});
我这里有两个问题:
- 我不知道如何将 $widnow 转换为 Angular 8 窗口对象。
- 当我将 $window 转换为 Angular 8 窗口时,如何向其中添加 UserSettings 数组?
这是我的 angular 8 组件,但我的代码无法正常工作。
HTML 模板
<script src="//myurl/widget/addIframe.js"></script>
<div class="user_external></div>
TS 代码
import { Component} from '@angular/core';
@Component({
selector: 'app-user',
templateUrl: './user-external.component.html'
})
export class UserExternalComponent {
constructor() {
}
ngOnInit() {
window.UserSettings = [];
window.UserSettings.push(['set', {
btn_color: '#008A00',
bg_color: 'white'
}]);
console.log(window);
}
}
谢谢
【问题讨论】:
标签: angularjs angular angular8 angular-upgrade