En Chrome, todo funciona, pero en Firefox, los enlaces nunca se actualizan.
Parece que el problema tiene que ver con core-js y/o zone.js :
Estos problemas están solucionados, pero estoy en la última versión de angular ( v2.4.9 ) y no funciona.
polyfill.ts , que es:
import 'core-js/es6/symbol'; import 'core-js/es6/object'; import 'core-js/es6/function'; import 'core-js/es6/parse-int'; import 'core-js/es6/parse-float'; import 'core-js/es6/number'; import 'core-js/es6/math'; import 'core-js/es6/string'; import 'core-js/es6/date'; import 'core-js/es6/array'; import 'core-js/es6/regexp'; import 'core-js/es6/map'; import 'core-js/es6/set'; import 'core-js/es6/reflect'; import 'core-js/es7/reflect'; import 'zone.js/dist/zone'; En main.ts Intenté poner la importación de zone.js antes de las importaciones core-js como se sugiere en uno de los tickets de Github, pero no funciona.
¿Hay otro polyfill que deba incluir o vincular en mi index.html ?
Parece que en realidad funciona el 50% del tiempo en Firefox. Si actualizo la página, la renderizará correctamente cada dos veces. Cuando no funciona, no funciona absolutamente ningún enlace; las devoluciones de llamada de eventos no se ejecutan, los enlaces {{ ... }} no se procesan, etc.
Este error en realidad es causado por la plataforma.js de Polymer (polyfills para Polymer) que estoy vinculando en mi index.html. Si lo elimino, los enlaces comienzan a funcionar nuevamente. Implementé este sintetizador Midi en mi aplicación y usa Polymer, que requiere platform.js . Entonces parece que hay un conflicto entre platform.js y Angular2 en Firefox . ¿Hay alguna manera de que pueda resolver este conflicto?
He estado buscando un poco.
Aparentemente, Firefox almacena datos en caché, de ahí su problema.
Mucha gente parece estar molesta al desarrollar Angular con Firefox.
Encontré este código , no resolvió el problema del tipo, pero debería resolver el tuyo:
$rootScope.$on('$viewContentLoaded', function() { $templateCache.removeAll(); });Si no, te aconsejo que busques caché y Angular2
Dado que aún no se han encontrado soluciones, he recurrido a activar las detecciones de cambios manualmente (cuando el agente de usuario es Firefox) por ahora.
Uso:
import { ApplicationRef } from '@angular/core'; ... constructor(private applicationRef: ApplicationRef) {} ... setInterval(() => this.applicationRef.tick(), 100);