У меня веб-чат работает правильно в Chrome, но не в IE. Мое приложение представляет собой веб-сайт Angular, использующий WebChat для подключения к моему боту.
Код выглядит так (технически это TypeScript, а не JavaScript, стрелочные функции перенесены):
directLine: DirectLine = new DirectLine({ secret: environment.botDirectLineSecretKey })
@ViewChild("botWindow") botWindowElement: ElementRef;
ngOnInit() {
this.directLine.activity$
.filter(activity => activity.type === "event" && activity.name === "init")
.subscribe(activity => this.changeSize());
BotChat.App({
botConnection: this.directLine,
user: { id: 'user' },
bot: { id: 'bot' },
}, this.botWindowElement.nativeElement);
}
changeSize(){
console.log("here")
var container = document.getElementById("bot-chat-container");
container.classList.add("fullSize");
}
В Internet Explorer я получаю эту ошибку в консоли:
ОШИБКА TypeError: вы указали недопустимый объект там, где ожидался поток. Вы можете предоставить Observable, Promise, Array или Iterable.
Если я переключаю botConnection: this.directLine
на directLine: this.directLine
, веб-чат работает, но тогда метод changeSize() никогда не вызывается.
Любая помощь приветствуется. Этот бот находится на общедоступном веб-сайте, и IE должен поддерживаться.
.subscribe
до.filter
- person D4RKCIDE   schedule 18.01.2018