Уеб чатът работи правилно в 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