Форум программистов, компьютерный форум, киберфорум
Наши страницы
JavaScript: Angular 2, AngularJS
Войти
Регистрация
Восстановить пароль
 
rybolmuk
0 / 0 / 0
Регистрация: 07.07.2015
Сообщений: 122
1

директивы

10.07.2015, 00:23. Просмотров 289. Ответов 3

есть такой код
.directive('myName', function () {
return {
my: 'blue',
link: function (scope, element, attributes){
element.prepend(angular.element('<div>link</div>'))
console.log(this.my)

}
Здесь ф-я возвращает объект. Если это объект, то почему я не могу сослаться на него с помощью ключевого слова this?

Добавлено через 49 секунд
Javascript
1
2
3
4
5
6
7
8
.directive('myName', function () {
return {
my: 'blue',
link: function (scope, element, attributes){
element.prepend(angular.element('<div>link</div>'))
console.log(this.my)
 
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.07.2015, 00:23
Ответы с готовыми решениями:

Директивы
Всем привет! задача:кусок кода запихать в директиву и вызывать когда мне...

Ui.router из директивы
Добрый день. в приложении создал конфиг: angular.module(&quot;LiamoApp&quot;, )...

Область видимости директивы
Как в этой строке template: &quot;&lt;p ng-repeat='value in arr'&gt;{{value}}&lt;/p&gt;&quot;...

Доступ к scope из директивы
Помогите разобраться. Есть контроллер. В него приходят данные, все хорошо. ...

Директивы и кастомный темплате
Есть директива, которая должна получить обьект, взять с него id, и вписать его...

3
JokerNN
134 / 130 / 57
Регистрация: 29.12.2011
Сообщений: 359
10.07.2015, 18:34 2
https://github.com/angular/angular.j...mpile.js#L2551
Потому что она вызывается в глобальном контексте. Условно так:
Javascript
1
2
3
4
5
6
7
8
9
var obj = {
    prop: 42,
    foo: function (){
       alert(this.prop);
       }
    }
    var foo2 = obj.foo;
    obj.foo();  //42
    foo2();  //undefined
Вот директива вызывается примерно как foo2 в примере.
0
rybolmuk
0 / 0 / 0
Регистрация: 07.07.2015
Сообщений: 122
12.07.2015, 19:38  [ТС] 3
JokerNN, а могу я тогда вызывать ее через window?
0
JokerNN
134 / 130 / 57
Регистрация: 29.12.2011
Сообщений: 359
13.07.2015, 14:14 4
rybolmuk, Нет, так как она локально объявлена, область видимости не глобальная. То, что у функции контекст === window, не значит что она объявлена в глобальном контексте.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.07.2015, 14:14

Angular директивы и динамический DOM
Всем привет! Столкнулся с проблемой. В одном шаблоне со списком компаний у меня...

Директивы при ajax обновлении из вне
Есть некий блок с директивой edit-block &lt;div edit-block id=&quot;t36&quot;&gt; &lt;/div&gt;...

Не видно директивы после добавления эл. в DOM
Есть две кнопки, при нажатии одной выскакивает алерт(с помощью директивы)....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru