1
私の角張った工場では、種類に応じていくつかのコードの名前を返す3つの関数があります:eat、feelおよびsource。これは、3つの機能がbassically同じことを行う、と私は1つの関数に変換したいと思い、このようになります。その機能の一つ複数のパラメータを持つAngular JS関数
getFeelingCode: function(feelingCode) {
var feelTag=$filter('filter')(constant.feeling_code, {code: feelingCode}, function(a, b) {
return a === b;
});
if(feelTag[0])
return feelTag[0].label;
else
return feelingCode;
}
です:
vApp.factory('BgsFactory', function(constant, $filter) {
return {
getCode: function(Code, StringCode) {
var cst;
switch(StringCode) {
case "eating_code": cst = constant.eating_code; break;
case "feeling_code": cst = constant.feeling_code; break;
case "source_code": cst = constant.source_code; break;
}
var Tag=$filter('filter')(cst, {code: Code}, function(a, b) {
return a === b;
});
if(Tag[0])
return Tag[0].label;
else
return Code;
}
私の見解では、私は
<td>{{getSourceCode(item.tags.source)}}</td>
<td>{{getEatingCode(item.tags.eat_code)}}</td>
<td>{{getFeelingCode(item.tags.feeling_code)}}</td>
私はそれらを私のコントローラに設定する方法はわかりません。私はそのようなことを試しましたが、機能が存在しないとは言いません。
$scope.getEatingCode = BgsFactory.getCode("eating_code");
$scope.getFeelingCode = BgsFactory.getCode("feeling_code");
$scope.getSourceCode = BgsFactory.getCode("source_code");
どのようにパラメータを渡す必要がありますか?
ありがとうございました!
ようなものです。それは動作します、ありがとう! – Krasiva
それはあなたの問題を解決する:) –