2017-04-06 9 views
0

値のレシピを使用するときに予想されるメッセージが表示されません。私はブラケットでAngular JSを練習しています。値のレシピを使用しているときに、正しい出力が得られません

私は{{message}}として出力を取得していますが、私は私が間違ってつもりどこ

"hai services are working!!"を共有してください期待しています。

HTMLコード:Injector.html

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Practicing Angular JS</title> 
     <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.6.1/angular.min.js"></script> 
     <script src="Injector.js"></script> <!-- Injector module file name --> 

    </head> 


<body ng-app="injectormodule"> <!-- root module--> 


<div ng-controller="controllerInjector"> 
    {{message}} 
    <!-- controller name--> 

    </div> 


    </body> 

</html> 

コントローラー:Injector.js

var app = angular.module("injectormodule", ["servicemodule"])//name of service is servicemodule 
    .controller("controllerInjector", ["$scope", "message", function($scope, message){ 
     $scope.message = message; 
}]); 

サービス:(バリューレシピ)あなたのservicecontrollerにを注入する必要が

var myapp = angular.module("servicemodule", []) 
    .value("message", "hai services are working!!"); 
+0

モジュールにないコントローラにサービスを注入する必要があります。そうですね、それはただの価値ではないことが分かります。そしてそれは同じです、あなたはあなたがそれを使用したいと思うものをコントローラーに注入します。 –

+0

私は以下のようにしてみましたが、まだ{{message}}を出力しています。サービスの名前は .controller( "controllerInjector"、 ""スコープ "、"メッセージ "" servicemodule "関数($スコープ、メッセージ、servicemodule){ $、" injectormodule "、[]) scope.message = message; }]); – Sourabh

答えて

0

同じモジュールを作成する必要があります。 サービスメソッドを使用してテキストを取得する作業例fiddleを参照してください。

、あなたはあなたのinjectormodule前に、あなたのservicemoduleを定義する必要がコメント

+0

サービスをコントローラに挿入するにはどうすればよいですか?同じモジュールを作成するには?以下は私のコードです、私は正しいことをしていますか?サービスの名前はサービスモジュール .controller( "controllerInjector"、 "" $ scope "、" message "、function($ scope、message){ $ scope.module(" injectormodule "、[" servicemodule "])メッセージ=メッセージ; }]); angular.module( "injectormodule"、["servicemodule"])//サービス名がサービスモジュール .controller( "servicemodule"、 "" scope "、" message "、function($ scope、message){ $ scope.message = message; }]); – Sourabh

+0

@Sourabh:答えに添付されているバイブルの例を参照してください。 – anoop

+0

私は以下のようにInjector.jsを変更しましたが、{{message}}と同じ出力を得ています。私はそれを理解していない例が混乱しています。サービスの名前は .controller( "controllerInjector"、 ""スコープ "、"メッセージ "" servicemodule "関数($スコープ、メッセージ、servicemodule){ $、" injectormodule "、[]) scope.message = message; }]); – Sourabh

0

でも、他のフィドルのリンクを参照してください。そうでない場合は、その作成は(servicemodule依存性を見つけることができないので)失敗します。

injectormoduleが作成されなかったため、ng-app="injectormodule"はDOM上でAngularをブートストラップできないため、二重角括弧({{ message }})は解釈されません。

ここには、作業codepenがあります。