wake-up-neo.com

anglejs Fehler: [$ compile: tpload] Fehler beim Laden der Vorlage

Ich versuche, eine einfache Routing-App in anglejs zu erstellen. Ich habe Haupt-index.html-Seite mit ng-view div und Javascript-Code für das Routing. Auch 2 einfache HTML-Seiten view2.html und view3.html im Unterordner partials1 . Ich bekomme unter Fehler. Bitte helfen.

Fehler: Zugriff wird verweigert . Fehler: [$ compile: tpload] Laden der Vorlage fehlgeschlagen: partials1/view3.html http://errors.angularjs.org/1.3.15/ $ compile/tpload? p0 = partials1% 2Fview3.html

  • index.html:

    <div data-ng-view></div>
    
    <script src="angular.js"></script>
    <script src="angular-route.js"></script>
    <script type="text/javascript">
        var demoApp = angular.module('demoApp', [ 'ngRoute' ]);
        demoApp.controller('SimpleController', function($scope) {
            $scope.customers = [ {
                name : 'Jon Smith1',
                city : 'Charlotte'
            }, {
                name : 'John Doe',
                city : 'New York'
            }, {
                name : 'Jane Doe',
                city : 'Jacksonville'
            } ];
        });
    
        demoApp.config([ '$routeProvider', function($routeProvider) {
            $routeProvider.when('/view1', {
                templateUrl : 'partials1/view3.html',
                controller : 'SimpleController'
            }).when('/view2', {
                templateUrl : 'partials1/view2.html',
                controller : 'SimpleController'
            }).otherwise({
                redirectTo : '/view1'
            });
        } ]);
    </script>
    

  • view2.html

    <div class="container">33333333333333</div>
    
  • view3.html

    <div class="container">33333333333333</div>
    
6
Santo

Error: Access is denied sagt Ihnen, dass auf die Vorlage nicht zugegriffen werden kann. Versuchen Sie, die Vorlage in Ihrem Browser zu öffnen. So ähnlich: http: //my_project/partials1/view3.html . Um die vollständige URL anzuzeigen, die von Ihrer App verwendet wird, verwenden Sie eine Dubug-Konsole (Registerkarte XHR).

4
Error: [$compile:tpload] Failed to load template: xyz.html (HTTP status: 404 Not Found)

kann durch folgende Einstellung in web.config verursacht werden

 <system.webServer>
    <handlers>
      <remove name="BlockViewHandler"/>
      <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />

Dadurch wird jede direkte Anforderung an die Datei im Verzeichnis Views blockiert. Angular Die xhr-Anfrage an diese Datei wird dadurch blockiert.

Kommentieren Sie es und sehen Sie, ob alles funktioniert. Verwenden Sie dies mit Vorsicht, da Sie auf Ihre Dateien zugreifen können.

Sie können diese URL auch auf weitere Antworten überprüfen: Fehler: $ compile: tpload konnte den Template-HTTP-Status nicht laden: 404

1
Ashish

In meinem Fall besteht das Problem darin, dass ich Standard-Header wie Accept = 'application/json' hinzugefügt habe. So haben meine Routen plötzlich aufgehört zu funktionieren, da diese Header nicht nur auf meine $ http.post-Aufrufe angewendet wurden, sondern auch auf mein Routing ...? Seltsam.

0
Suamere

Ich hatte den gleichen Fehler, in meinem Fall wurde der Webserver mit dem Knoten js geschrieben und der URI, um Ansichten zu erhalten, die sich im angegebenen Pfad mit $ stateProvider befanden, wurde nicht erstellt, da für jede Ansicht/Vorlage eine http-Anforderung angezeigt werden soll vom Typ Xhr GET wird gemacht. 

Da der URI nicht existierte, erhielt ich einen 404-Code, der dazu führte, dass der Browser in einen Callback geriet, der ihn tötete. Stellen Sie sicher, dass Ihr Server die angeforderte Ansicht zurückgibt. (Übersetzt mit Google Translate)

0
learango