Когда я добавил следующий код в main.ts, CustomEvent не был правильно добавлен в объект окна. Если я добавлю CustomEvent, используя консоль JavaScript, это произойдет. Между прочим, проблема возникает, когда я нажимаю кнопку, которая запускает мое пользовательское событие (называемое «выбор-щелчок»).
import { enableProdMode } from '@angular/core';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app/app.module';
import { environment } from './environments/environment';
if (environment.production) {
enableProdMode();
}
function CustomEvent ( event, params ) {
params = params || { bubbles: false, cancelable: false, detail: undefined };
var evt = document.createEvent( 'CustomEvent' );
evt.initCustomEvent( event, params.bubbles, params.cancelable, params.detail );
return evt;
}
CustomEvent.prototype = (<any>window).Event.prototype;
(<any>window).CustomEvent = CustomEvent;
platformBrowserDynamic().bootstrapModule(AppModule)
.catch(err => console.log(err));
Ниже приведены два снимка экрана. Первый, main.ts добавляет CustomEvent. Во-вторых, я добавляю CustomEvent с помощью консоли JavaScript.
Примечание: $ .isFunction возвращает "true", когда я использую консоль JavaScript