2015-05-25 2 views
0

есть проблема, я хочу получить что-то в директиве
, и я хочу установить его в html
так, как можно установить в html и получить директиву?angularJS могу ли я использовать params в директиве?

есть HTML

<div my-directive="Bob"> 
<div> 

directive.js

App.directive('myDirective', function() { 
    link: function() { 
    console.log('xxx') 
    } 
}) 

как я могу получить Bob в директиве?

ответ

5

Да, с помощью attrs

link: function (scope, element, attrs) { 
    console.log(attrs.myDirective); // Outputs Bob 
} 

attrs В объект содержит пары ключ-значение, где ключи нормированные имена атрибутов атрибутов на элементе, а значения являются строковые значения каждого атрибута.

2

Да Вы можете использовать параметры в директиве.

Это односторонние данные связывания раствора

Контроллер:

$scope.options = {one: "first, two: "second"}; 

вид:

<div databinding="options"></div> 

И в Javascript:

app.directive('databinding', function() { 
    return{ 
     scope: { 

     options: "@" //Can also use = here 

     }, 
     link: function (scope, elm, attrs) { 

     console.log(scope.options); 

     } 
    } 
}); 

+0

Я также хочу знать, что означает '@' или '=' здесь? – nataila

+0

@ Связывание строки атрибута = привязка двухсторонней модели & привязка метода обратного вызова –

Смежные вопросы