使用全局变量测试角度4 app

时间:2017-07-27 20:38:11

标签: angular

我有一个角度应用程序使用由ngOnInit()中的外部.js库设置的全局变量。建设和运行没有任何问题。 在运行测试时(使用karma)我得到错误" myglobal未定义"。

我尝试在describe()之前定义变量,如下所示:

var myglobal = { };
describe('AppComponent', () => {

这并没有改变任何事情。我该如何定义该变量?

1 个答案:

答案 0 :(得分:1)

要解决此问题,您需要使用WindowRef组件

访问窗口对象
import {WindowRef} from './WindowRef';

并在班级

constructor(private winRef: WindowRef) {

console.log('Window object', winRef.nativeWindow['yourGlobalVar']);
//or  winRef.nativeWindow.yourGlobalVar

}

source here