Como chamar um método Angular 4 de uma função JavaScript simples autônoma?
Gostaria de passar alguns dados \ propagar eventos de um plug-in na página para o meu aplicativo Angular 4.
Mais especificamente, no meu caso, dados \ eventos são gerados dentro de um aplicativo de plug-in do Silverlight que fica ao lado do aplicativo Angular na página.
Eu tenho a seguinte solução em minha mente:
Crie uma função JS global que seja chamada do Silverlight (pois essa parece ser a maneira mais simples de extrair dados do Silverlight) quando houver necessidade de conversar com o lado Angular.A função, por sua vez, chama algum método de classe Angular que passa dados coletados do Silverlight.Como ilustração disso (excluindo a parte do Silverlight), poderíamos ter o seguinte.
Um método como ponto de entrada no lado angular:
export class SomeAngularClass {
public method(data: any): void {
...
}
}
E em algum lugar fora do domínio Angular, adicionamos uma função JavaScript global simples (a ser chamada pelo Silverlight):
window.somePlainJsFunction = function (data) {
// How to consume SomeAngularClass.method() from here?
}
A questão é:como podemos chamar os métodos de classe Angular a partir de uma função JavaScript simples?