2017-12-31 110 views
0

Zuvor funktionierte mein Add-In in verschiedenen Browsern gut. Kürzlich, in einigen Browsern wird es nicht gut geladen (Fehlermeldungen in der Konsole + zeigt nur eine leere Seite in UI); in einigen Browsern wird es geladen, aber mit Fehlermeldungen in der Konsole. Es ist auch seltsam, dass es in localhost gut funktioniert, aber nicht in der Produktion. Hier ist der minimale Code:

console.log("OfficeHelpers.Utilities.host: " + OfficeHelpers.Utilities.host); 
console.log("OfficeHelpers.Utilities.platform: " + OfficeHelpers.Utilities.platform); 

Office.initialize = function (reason) { 
    jQuery(document).ready(function() { 
     angular.bootstrap(document, ['test']) // it is important to not write 'ng-app="test"' in index.html, otherwise controller will be executed twice 
     console.log("bootstrapped inside Office.initialize!"); 
    }) 
} 

test = angular.module('test', ['ui.router']); 
test.config(['$stateProvider', '$locationProvider', function ($stateProvider, $locationProvider) { 
    $stateProvider 
     .state('addinHomePlus', { 
      url: '/addin/homePlus', 
      template: 'testtest!!!' 
     }) 
    $locationProvider.html5Mode(true); 
}]) 

In Chrome, zeigt es eine leere Seite in UI und hier sind Fehlermeldungen mit $rootScope:infdig:

enter image description here

Wer weiß, was falsch ist?

Bearbeiten 1: Ich verwende https://cdn.rawgit.com/devote/HTML5-History-API/master/history.js, um HTML5-Modus zu helfen. Wenn ich $rootScopeProvider.digestTtl(3) gesetzt, bekam ich die folgende Meldung für $rootScope:infdig:

3 $digest() iterations reached. Aborting! 
Watchers fired in the last 5 iterations: [null,[{"msg":"fn: function(){var a=jb(c.url()),b=jb(l.absUrl()),f=c.state(),g=l.$$replace,m=a!==b||l.$$html5&&e.history&&f!==l.$$state;if(q||m)q=!1,d.$evalAsync(function(){var b=l.absUrl(),c=d.$broadcast(\"$locationChangeStart\",b,a,l.$$state,f).defaultPrevented;l.absUrl()===b&&(c?(l.$$parse(a),l.$$state=f):(m&&h(b,g,f===l.$$state?null:l.$$state),\nk(a,f)))});l.$$replace=!1}"},{"msg":"fn: function(){return d.hash()}","newVal":""}]] 
+0

Kann die Vorlage haben !!! Am Ende? –

+0

Ich glaube nicht, "Vorlage:" Testtest !!! "hat Problem ... – SoftTimur

Antwort

0

Wenn ich https://cdn.rawgit.com/devote/HTML5-History-API/master/history.js nicht verwenden, diese $rootScope:infdig verschwinden. Aber ich brauche history.js wie vorgeschlagen here.

Verwandte Themen