2013-12-11 47 views
3

我想了解如何在Angular中使用指令。在angularjs.org的示例中,值在JavaScript中的範圍中設置,然後在匹配指令時引用該範圍。將字符串直接傳遞給角度指令?

模板:

<my-customer info="naomi"></my-customer> 

範圍:

.controller('Ctrl', function($scope) { 
    $scope.naomi = { name: 'Cat', address: '1600 Amphitheatre' }; 
    $scope.igor = { name: 'Dog', address: '123 Somewhere' }; 
    }) 

模板:

Name: {{customerInfo.name}} Address: {{customerInfo.address}} 

我想通過屬性,直接從模板。所以在這個例子中我想寫一個輸出模板:

Name: Naomi 

沒有經過一個範圍。

回答

4

您可以使用linking functionattrs參數來完成此操作。

module.directive('name', function() { 
    return { 
    link: function (scope, element, attrs) { 
     console.log(attrs.info); 
     // <- 'naomi' 
    } 
    } 
}); 

然後在標記:

<name info='naomi'></name> 

See a live example

+1

冷靜,我如何與模板屬性使用它呢?模板:'名稱:{{attrs.info}}'不起作用 – Himmators

+0

何時運行$ eval?在鏈接? – Himmators