2016-06-19 4 views
-2

私はこのエラーについてはかなりの数の類似の投稿を見てきましたが、これまでのところ確かな答えはなかったと思いますが、このエラーがかなり一般的であるAngular 1.xの各バージョン。

公式の角度docは、テンプレートパスのスペルが間違っている可能性が高いと考えていますが、そうは思わないでしょう。私はフォルダ構造の写真を添付し​​ました。 01258680900935641

EDIT1:絶対パスを使用しようとしましたが、何の違いもありませんでした。

EDIT2:ここでは完全なエラーです:すべての

Error: [$compile:tpload] http://errors.angularjs.org/1.5.6/$compile/tpload?p0=%2Fpage%2Fsecond.html&p1=-1&p2= 
    at Anonymous function (https://code.angularjs.org/1.5.6/angular.min.js:156:275) 
    at Anonymous function (https://code.angularjs.org/1.5.6/angular.min.js:130:399) 
    at m.prototype.$eval (https://code.angularjs.org/1.5.6/angular.min.js:145:96) 
    at m.prototype.$digest (https://code.angularjs.org/1.5.6/angular.min.js:142:158) 
    at m.prototype.$apply (https://code.angularjs.org/1.5.6/angular.min.js:145:399) 
    at l (https://code.angularjs.org/1.5.6/angular.min.js:97:233) 
    at D (https://code.angularjs.org/1.5.6/angular.min.js:101:373) 
    at e (https://code.angularjs.org/1.5.6/angular.min.js:102:448) 
angular.js (13642,11) 
+0

相対URLを絶対URLに置き換えることはできますか?別の問題であるかどうかを確認してください。 –

+0

@NagaSaiAは試してみましたが、何の違いもありませんでした – stt106

+0

あなたは完全なコンソールエラーを私にpingすることができます..さらにデバッグするには... –

答えて

0

まず、 downvotesのおかげで!完全にそれに値する:D

元の質問で言われたように、良い/受け入れられていない答えがないので、多くの同様の質問があります。私のように誰かが新しい角度になるのを助けるかもしれない場合に備えて、私はそれを解決するために私の方法を投稿しています。

第2に、改良されたエラーメッセージが表示されるので、開発中の未補正バージョンの角度の使用に関するPhilのコメントは便利です。

第3に、学習や開発時に優れた開発ツールを備えたブラウザを使用します。これは部分的に私がこのエラーにそれを修正する手掛かりなしで得た理由です。

最後に、私がこのエラーを受けたのは、index.htmlファイルをブラウザ(Microsoft Edge、何らかの理由でChrome開発ツールをアップグレード後に開くことができない)から直接開いているためです。エッジでは、エラーはError: $compile:tploadと表示されます。一方、Chrome Canaryを使用すると、2つのエラーが発生し、最初のエラーはxmlhttprequest Cross Origin requests are only supported for protocol schemes: http, https...と表示されます。ブラウザから直接htmlファイルを開くと意味があります。このpostにはこれを解決するための良い回答がいくつかあります。要するに、これを解決する2つの方法:a)ローカルサーバを使用する。 htmlをレンダリングするためにnode.jsがインストールされている場合はhttp-server b)ng-templateディレクティブを使用して、index.htmlのスクリプトタグ内にテンプレートを追加してテンプレートを追加します。これは私が

<script type="text/ng-template" id="main.html"> 
     This is {{name}} 
</script> 
<script type="text/ng-template" id="second.html"> 
     This is {{name}} 
</script> 

そして、私の場合のためにindex.htmlをするために追加のルーティングを設定する際に、単純に例えばテンプレートIDを使用しているものです

app.config(function ($routeProvider) { 
     $routeProvider.when('/', { 
      templateUrl: "main.html", //NOTE: use included template id 
      controller: 'mainCtrl' 
     }) 
     .when('/second', { 
      templateUrl : 'second.html', 
      controller : 'secondCtrl' 
     }) 
     .otherwise({redirectTo : '/'}); 
    }) 

ブラウザから直接HTMLを開いても問題ありません。詳細については、公式の角度を参照してください。doc

関連する問題