2016-05-11 6 views
1

さらに多くのテンプレートを使用してcreateディレクティブを作成したいと思います。 選択したテンプレートは、テンプレートの種類などの値によって異なります。 次に、htmlページでmyディレクティブを呼び出し、タイプのテンプレートタイプを変更した場合は、htmlテンプレートを変更する必要があります。このよう :AngularJsはテンプレートディレクティブを作成します

<template-factory template-type={{foo}}></template-factory> 

は、私はすべての私のテンプレートが含まれている1つのHTMLテンプレートを作成することができるものと思うし、NG-場合ヘルプから選択します。しかし、私はそれがあまりよくないと思う。 このタスクに最適なソリューションを選択してください。

答えて

2

興味深いことに、ディレクティブでは、関数をテンプレートとして渡すことができます。この関数は、テンプレートに使用される文字列を返すことができます。

これがどのように行われ、賛否両論があるかを見るにはWhat are the benefits of a directive template function in Angularjs?をご覧ください。 angular docsから

angular.module('docsTemplateUrlDirective', []) 
.controller('Controller', ['$scope', function($scope) { 
    $scope.customer = { 
    name: 'Naomi', 
    address: '1600 Amphitheatre' 
    }; 
}]) 
.directive('myCustomer', function() { 
    return { 
    templateUrl: function(elem, attr){ 
     return 'customer-'+attr.type+'.html'; 
    } 
    }; 
}); 
+1

はあなたにジョーイをありがとうございました。あなたは私の仕事をとても助けてくれます。 –

関連する問題