@angular_js

Страница 280 из 325
Sergey
03.07.2018
12:47:59
сижу эксперементирую

неужели тут никто не знает?

Игорь
03.07.2018
12:48:46
не верю, что в доках нет ивента на открытие модалки

я конечно уже не помню как и что в ангуляржс, но дока говорит, что можно свой контроллер поключить через него как-то может можно?

Google
Sergey
03.07.2018
12:50:48
(function (angular) { 'use strict'; angular.module('twoWayApp.entities.eventsLog').controller('EventsLogDetailController', [ '$scope', '$filter', '$mdDialog', function ($scope, $filter, $mdDialog) { var $ctrl = this; $ctrl.$onInit = function () { // alert('Инициализируем подсветку синтаксиса.'); var q = document.querySelector('.md-dialog-container'); console.log(q); };

Игорь
03.07.2018
12:52:34
может я чего не понимаю, но я ориентируюсь на этот код https://prnt.sc/k20wt6

Sergey
03.07.2018
12:55:18
вот у меня контролер объявляется

(function (angular) { 'use strict'; angular.module('twoWayApp.entities.eventsLog').controller('EventsLogDetailController', [ '$scope', '$filter', '$mdDialog', function ($scope, $filter, $mdDialog) { var $ctrl = this; $ctrl.$onInit = function () { // alert('Инициализируем подсветку синтаксиса.'); var q = document.querySelector('.md-dialog-container'); console.log(q); };

это все правильно

https://github.com/pc035860/angular-highlightjs

это не работает

Andrey
03.07.2018
12:58:54
Я недавно кидал как слушать открытие модалки $mdDialog

Sergey
03.07.2018
12:59:38
поэтому мне нужно вручную это сделать <link rel="stylesheet" href="/path/to/styles/default.css"> <script src="/path/to/highlight.pack.js"></script> <script>hljs.initHighlightingOnLoad();</script

хотя наверное не сработает

$(document).ready(function() { $('pre code').each(function(i, block) { hljs.highlightBlock(block); }); });

Google
Sergey
03.07.2018
13:02:31
а иначе никак?

Andrey
03.07.2018
13:03:07
Есть у компонента $postLink

Загуглите ивенты компонента

Sergey
03.07.2018
13:03:47
я контроллеру добавлял

не работает

$ctrl.$postLink = function () {}

Andrey
03.07.2018
13:04:05
Если у вас не компонент только директива спасет

Загуглите

Sergey
03.07.2018
13:04:23
document.body.addEventListener('DOMSubtreeModified', function () { document.title = 'DOM Changed at ' + new Date(); }, false);

Andrey
03.07.2018
13:04:24
Я с телефона пишу

Уууу

Костылирование

Загуглите

Sergey
03.07.2018
13:04:50
это не ресурсоемкая операция будет?

Andrey
03.07.2018
13:04:55
Есть куча примеров

Вы сейчас время только теряете

Sergey
03.07.2018
13:06:35
что именно гуглить?

Игорь
03.07.2018
13:13:05
что именно гуглить?
гуглить свою проблему

Sergey
03.07.2018
13:30:21
$scope.$on('$viewContentLoaded', function () { console.log('$viewContentLoaded'); });

не срабатывает

Google
Sergey
03.07.2018
13:31:46
понятно почему

туплю

.directive( 'elemReady', function( $parse ) { return { restrict: 'A', link: function( $scope, elem, attrs ) { elem.ready(function(){ $scope.$apply(function(){ var func = $parse(attrs.elemReady); func($scope); }) }) } } })

Евгений
03.07.2018
13:42:33
ребят, объясните дураку, как связана директива и контроллер

я все никак до конца въехать не могу

ведь у директивы даже скоуп можно сделать локальным

и независимым от контроллера

так в чем соль их взаимодействия?

вернее как оно происходит

Sergey
03.07.2018
15:48:36
app.directive('uiHighlight', function ($parse) { return { restrict: 'E', link: function($scope, el, attrs, ctrl) { var source = $parse(attrs.source)($scope); // linter ругается на Prism без window var html = window.Prism.highlight( source, window.Prism.languages[attrs.lang] ); var pre = angular.element( '<pre><code class="highlight language-' + attrs.lang + '">' + html + '</code></pre>' ); el.replaceWith(pre); } }; });

<ui-highlight source="item.description.new_item | json: 2" lang="javascript"></ui-highlight>

единственное к чему пришел

Remite
03.07.2018
16:45:51
ведь у директивы даже скоуп можно сделать локальным
можно локальным, а можно взять от контроллера, а можно от другой директивы, а можно что угодно, вопрос только как Вам нужно

Artem
03.07.2018
21:09:50
Приветствую! Помогите пожалуйста решить простую задачку - https://codepen.io/verbart/pen/jKRmYz?editors=1010

Ricky
04.07.2018
10:16:57
ребят, объясните дураку, как связана директива и контроллер
Директива по умолчанию наследует контроллер по принципу прототипного наследования, контроллер шарит свой скоуп с директивой. Как написано в доке At a high level, directives are markers on a DOM element. То есть бизнес-логика лежащая в контроллере транслируется на элементы DOM при помощи директив (встроенные директива ngClick, ngInclude, ngRepeat)

Ekaterina
04.07.2018
10:17:41
Всем привет. Ребята, кто-нибудь объясните мне, пожалуйста, в чем проблема. Ситуация такая, у меня есть радио кнопки через ng-repeat <label ng-repeat="type in $ctrl.types"> <input type="radio" data-ng-value="type" data-ng-model="$ctrl.сard.block.personType" data-ng-click="$ctrl.getOrganization(type.id)" /> </label> По нажатию на кнопку я отправляю данные на сервер, в json тип указан, в response также приходит верный. В переменную card присваивается response. Но после этого нужная радио кнопка не выбрана. Функция сохранения function doApply() { savePromise().then( function (response) { $ctrl.card = response.data; }) }

Ricky
04.07.2018
10:22:02
то есть контроллер содержит всю логику и обработки, когда директива в себе держит только модели по сути?
директива- это швейцарский нож, ты можешь инициализировать контроллер в теле директивы не создавая контроллер и вовсе, просто заинжектить в тело HTML шаблона имя директивы и все, там много возможностей, но основная это траверсить DOM, манипулировать элементами, делать какую-нибудь магию

Евгений
04.07.2018
10:23:00
окай, спасибо, но пока все равно с практической точки зрения не представляю

Ricky
04.07.2018
10:35:17
Google
Евгений
04.07.2018
10:35:46
на сайте Кантора набрал 65% вроде

по тесту

знаний

Ricky
04.07.2018
10:36:33
на сайте Кантора набрал 65% вроде
в ООП стиле норм разбираешься?

Евгений
04.07.2018
10:36:47
относительно

ну, я понимаю прототипы

something.prototype.somefunction = function () { // реализация }

например

для того чтобы по ссылке обращаться к одной функции

чем создавать на каждый объект новую

Ricky
04.07.2018
10:38:15
относительно
потренься, тогда ты выкупишь в чем весь прикол директив

something.prototype.somefunction = function () { // реализация }
а как сделать чтобы anything.prototype.anyfunction = function () {} делал тоже что и something.prototype.somefunction()?

Евгений
04.07.2018
10:41:27
anything.prototype.constructor = родительский конструктор()

если не прав, напиши пожалуйста как правильно

Ricky
04.07.2018
10:45:20
anything.prototype.constructor = родительский конструктор()
ты пишешь родительский, а если он sibling(родственный)?

Евгений
04.07.2018
10:46:37
anything.prototype.anyfunction = Object.create(something.prototype)?

если он родственный

ну условно говоря он скопирует туда все, включая и другие методы если они есть, а не только somefunction

насколько я помню

Google
Евгений
04.07.2018
10:48:14
anything.prototype.anyfunction = Object.create(something.prototype.somefunction)

наверное так правильнее

но я не уверен в ответе

Ricky
04.07.2018
10:54:01
anything.prototype.anyfunction = Object.create(something.prototype.somefunction)
функцию точно не стоит туда совать

Евгений
04.07.2018
10:54:17
а как тогда?

Ricky
04.07.2018
10:58:23
но я не уверен в ответе
var a = {}; a.str = 'abc'; var b = Object.create(a); b.str // 'abc'

Евгений
04.07.2018
10:59:10
то есть без прототипа напрямую Object.create

а его он сам поменяет как нужно

Ricky
04.07.2018
11:00:13
а как тогда?
если хочешь создать прототип, просто копируешь сам объект и он создаст прототипную цепочку

Евгений
04.07.2018
11:00:40
в нашем случае b будет связан в цепочку с а?

Ricky
04.07.2018
11:02:56
а его он сам поменяет как нужно
а в Классах ES5 внутри класса, в который вставить фичу из другого класса function B() {A.call(this, argument/-s) }

Евгений
04.07.2018
11:03:38
ну да, я так и подумал

если можно через прототип

Ricky
04.07.2018
11:08:53
если можно через прототип
на момент объявления класса, мы создаем конструктор ну или оставляем его пустым. А дальше, в прототип записываем методы и свойства

Константин
04.07.2018
12:52:15
Всем доброго дня

Страница 280 из 325