
Sergey
17.04.2018
07:23:35
Директивы/компоненты

Евгений
17.04.2018
07:25:10
к сожалению такой ответ я не могу дать у себя на работе, нужен развернутый и обоснованный ответ, потому и прошу статью с разбором

Sergey
17.04.2018
07:25:41
Хотя как например отправить клик на кнопку например без использования element или установить фокус на инпут, не знаю, буду рад идеоматичным примерам

Remite
17.04.2018
07:25:48
Что то у вас у всех такие Лиды злые, тому объясни, тому докажи :

Google

Remite
17.04.2018
07:26:22
Работать через нативные апи

Sergey
17.04.2018
07:29:43
Работать через нативные апи
Это на какой вопрос был ответ?) Как клик заэммитить на элемент из селектора это понятно, но это ж выглядит как тот самый проклятый jquery который требуется свергнуть)

Remite
17.04.2018
07:30:32

Евгений
17.04.2018
07:31:51
ладно, пойду дальше искать)
спасибо

Sergey
17.04.2018
07:33:17
Так а что искать-то. Раз вы с реакта, то как это было бы там? Грешновато?

Remite
17.04.2018
07:35:26
На реакте сложно работать с дом узлами с помощью нативного апи, или джиквери потому что при перестраивании компонентов уничтожаются подписки

Евгений
17.04.2018
07:35:37
в реакте не считается особо плохим использование того же ajax в мидлваре
он кроссбраузерный и удобный
не смотря на новомодные axios и fetch
да, без промисов, да не так красиво

Remite
17.04.2018
07:36:32
Аксиос не новомодный, кто обёртка над xhr

Евгений
17.04.2018
07:36:38
но единожды настроенный запрос к серверу гет\пост вполне покрывает всю оставшуюся разработку касающуюся рест апи

Google

Remite
17.04.2018
07:36:48
Промисы это не ангуляре заслуга а ес6

Евгений
17.04.2018
07:37:02
сейчас за реакт говори
л
на реакте и не нужно работать с домом на прямую
если это нужно - всегда есть refs

Sergey
17.04.2018
07:37:53
Так и тут та же фигня
С примерно похожей мотивацией
Есть ангуларовские методы для навешивается классов, обработчиков, раз пишем на агуларе, максимально используем экосистему

Евгений
17.04.2018
07:39:55
в реакте для использования жКвери его нужно отдельно подключать как библиотеку, насколько я помню
тут же в ангуляр уже встроен жкВери
мало того, так оно еще и переписано на лайтовую версию

Sergey
17.04.2018
07:40:53
Минимальное подмножество для всяких извращений. По крайней мере я его всегда так использовал
Хотя один хрен полную библиотеку тащит кто-нибудь из 100500 node_modules

Remite
17.04.2018
07:43:23

Евгений
17.04.2018
07:45:13
мне говорят, что реакт и ангуляр довольно схожи в своих стремлениях. Я же привожу пример того, что реакт не выходя из своей эко системы может работать с дом, когда ангуляр несет в себе костыль в виде жКвери, от которого просто не избавиться

Sergey
17.04.2018
07:45:27
Да вопрос странно поставлен, как почему нельзя goto например использовать. А потом оказывается что очень даже зя, но по обстоятельствам

Евгений
17.04.2018
07:45:35
и мне необходимо научиться работать без жКвери лайт, обрезая по сути экосистему ангуляра
я сам не в восторге
но он очень ругается на использование доллара

Google

Евгений
17.04.2018
07:46:16
хотя я даже не понимаю как использовать скажем тот же $scope без знака доллара
короче я не совсем врубаю че происходит

Sergey
17.04.2018
07:46:46
Так это у него надо спрашивать а не тут)

Евгений
17.04.2018
07:47:12
он своеобразный человек
что я и понял, его лучше лишний раз не трогать

Remite
17.04.2018
07:48:04
$scope это не про джиквери

Sergey
17.04.2018
07:48:54
Да тут все системные сервисы с $, что-то смешалось всё в кучу

Remite
17.04.2018
07:49:00
Angular.element - вот про джиквери
Все что с долларом или двумя это сервисы ангуляра

Евгений
17.04.2018
07:50:01
окей, ситуация такая - мне говорят использовать angular.element, дабы избежать жКвери, и тут же я узнаю, что angular.element - это жКвери
веселье :D

Sergey
17.04.2018
07:50:22
Там ещё просто функция $ есть, вызов jquery, но оно конфликтует с протрактором где-то, тот тоже такое экспортирует кажется
Или это исключительно проблемы тайпингов, я не уверен

Remite
17.04.2018
07:51:52

Евгений
17.04.2018
07:52:54
я просто попросил ссылку на ресурс, который бы позволил мне ответить своему лиду на 2 вопроса - почему использование жКвери настолько ужасно, что его нельзя использовать на проекте.
и какие есть альтернативы из экосистемы ангуляра(исключая жКвери)

Remite
17.04.2018
07:54:01
Так jqlite это и есть альтернатива из экостстемы

Sergey
17.04.2018
07:54:02
Я не уверен что такая есть, что там у вашего Лида в голове происходит, что он хотел сказать, как вы это поняли, вот вопросы)

Евгений
17.04.2018
07:54:44
оговорка
жКвери подразумевает жКлайт
я не беру в рассчет полноценный жКвери

Google

Евгений
17.04.2018
07:55:06
как отдельную библиотеку

Remite
17.04.2018
07:55:19
А не рекомендуется использовать потому что в ангуляре уже есть механизм и нет смысла тянуть
Тогда юзать нативные апи для работы с домом

Евгений
17.04.2018
07:55:50
нативные можно пример?
angular.element?
это нативный?

Remite
17.04.2018
07:56:12
Document.querySelector(...)

Sergey
17.04.2018
07:56:17
https://stackoverflow.com/questions/30332945/jquery-click-events-not-working-with-angularjs
Ну вот пример, как с реактом

Remite
17.04.2018
07:56:45
document.getElementsTagName
Итд

Евгений
17.04.2018
07:57:07
а, то есть использовать ванилку?
я думал нативный апи реактовский
как альтернатива жКлайт

Remite
17.04.2018
07:58:31
Какое отношение имеет Реакт к ангуляру?

Nickolay
17.04.2018
07:58:52
Скормить jQuery до старта Angualar. Тогда последний будет юзать полный jQuery, вместо своего обрубка )))
Но вопрос реально странный )
https://gist.github.com/esfand/9638882

Евгений
17.04.2018
07:59:31
понимаю)но задача есть задача

Nickolay
17.04.2018
07:59:51
Может поможет в осязании проблемы.

Google

Евгений
17.04.2018
08:00:31
спасибо
я бы еще хотел задать один вопрос, но он легче и адекватный)
https://codepen.io/anon/pen/XqrdqP
не понимаю что здесь передается в параметры модуля и контроллера
то есть массивы
со строками, как это работает, и почему в функцию после передаются эти же сервисы, только через $

Nickolay
17.04.2018
08:03:39
Тут я плаваю в точных понятиях, но это инжекты

Sergey
17.04.2018
08:04:43
> var app = angular.module('headerPage', ['firebase']); это импорт других angular.module
> app.controller("headController", ['$http', '$firebase', '$scope', '$filter', это импорт уже того что модули экспортируют
Т.е. [firebase] это зависимость вашего модуля от другого. В контроллере это способ импортировать сервисы и при этом не поесть фекалий после минификации
> $("#myElement").on("click", function() {
console.log("clicked");
});
А вот за это вас будут ругать

Евгений
17.04.2018
08:07:36
то есть это импорт другого модуля в мой модуль?скажем, если я не напишу $scope в контроллере, то скоуп не импортнется и использовать его не смогу?
это не мой код
это от ссылки на стекОверфлоу
просто вот например http://jsfiddle.net/nu11ejnw/50/
здесь просто колбек в который передается скоуп
без массивов и строк

Sergey
17.04.2018
08:09:51
Если так делать, то после минификации работать без дополнительных телодвижений не будет, $http ссылка на сервис http ангуларовский, по имени, если его поменять, будет ой

Евгений
17.04.2018
08:09:57
имя контроллера и колбек - оно работает. Так когда нужно вписывать строковые зависимости с использованием массива

Sergey
17.04.2018
08:10:08
Всегда
Ну или юзать ngInject