@JSlang

Страница 137 из 2237
v
12.08.2016
07:53:11
yep

Oleg
12.08.2016
08:21:40
в пине ссылка на чатик для нубских вопросов, возможно там более щадащая аудитория )

Ilya
12.08.2016
08:24:21
>format C:\ Зачем вы человеку советуете генту поставить,

John
12.08.2016
08:24:56
у генту же 3 команды и эта точно не первая, здесь наверное виндовс ставится

Google
Каїн
12.08.2016
08:26:18
Даров рибятки

Anton
12.08.2016
12:25:37
Есть вопрос, может он и ламерский, но я сходу в гугле не нашёл решения. Есть 2 модуля, живут отдельной себе жизнью. Один выполняет одно, второй второе. Но первый модуль в определённый момент при генерации страницы должен вызвать метод из второго модуля. А второй модуль в это время не успел проинициализироваться, в результате чего выпадает ошибка. Вариант "запускать второй модуль раньше первого" неспортивный. Есть конечно вариант ставить в первом модуле какую-то переменную в true, во втором модуле при инициализации смотреть эту переменную, и если она true, то запускать что-то на исполнение, но, как мне кажется, это дикий костыль. Гугл подсказал смотреть инициализацию второго модуля через setInterval, но это ещё хуже. Есть что в JS для решения такой проблемы? То есть первый модуль вызывает второй модуль, но вызов ждёт инициализации второго модуля, и только потом происходит исполнение.

Klim
12.08.2016
12:28:09
заводи второй модуль когда заводишь первый

Anton
12.08.2016
12:28:53
первого модуля может не быть

Vladimir
12.08.2016
12:30:11
и первый модуль и второй ассинхронные?

Алексей
12.08.2016
12:30:25
первого модуля может не быть
а как модули подгружаются то у тебя?

Есть вопрос, может он и ламерский, но я сходу в гугле не нашёл решения. Есть 2 модуля, живут отдельной себе жизнью. Один выполняет одно, второй второе. Но первый модуль в определённый момент при генерации страницы должен вызвать метод из второго модуля. А второй модуль в это время не успел проинициализироваться, в результате чего выпадает ошибка. Вариант "запускать второй модуль раньше первого" неспортивный. Есть конечно вариант ставить в первом модуле какую-то переменную в true, во втором модуле при инициализации смотреть эту переменную, и если она true, то запускать что-то на исполнение, но, как мне кажется, это дикий костыль. Гугл подсказал смотреть инициализацию второго модуля через setInterval, но это ещё хуже. Есть что в JS для решения такой проблемы? То есть первый модуль вызывает второй модуль, но вызов ждёт инициализации второго модуля, и только потом происходит исполнение.
посмотри в сторону того же require, там есть асинхронная подгрузка зависимостей. Сначала подгружаем зависимости, потом выполняем уже код. Просто очень странная фраза "в определенный момент", если один модуль вызывает что-то из второго, это ж они уже связанные, а ни как не "живут своей жизнью"

Vladimir
12.08.2016
12:33:38
Есть вопрос, может он и ламерский, но я сходу в гугле не нашёл решения. Есть 2 модуля, живут отдельной себе жизнью. Один выполняет одно, второй второе. Но первый модуль в определённый момент при генерации страницы должен вызвать метод из второго модуля. А второй модуль в это время не успел проинициализироваться, в результате чего выпадает ошибка. Вариант "запускать второй модуль раньше первого" неспортивный. Есть конечно вариант ставить в первом модуле какую-то переменную в true, во втором модуле при инициализации смотреть эту переменную, и если она true, то запускать что-то на исполнение, но, как мне кажется, это дикий костыль. Гугл подсказал смотреть инициализацию второго модуля через setInterval, но это ещё хуже. Есть что в JS для решения такой проблемы? То есть первый модуль вызывает второй модуль, но вызов ждёт инициализации второго модуля, и только потом происходит исполнение.
выложи гист с упрощенной версией своих модулей

Anton
12.08.2016
12:33:46
project.extend("module1", { init() { }, checkForm() { } }); project.extend("module2", { init() { }, checkForm() { } }); при DOM Ready происходит автоматическая сборка всех модулей и запуск init у каждого, то есть нет чёткого порядка

Алексей
12.08.2016
12:34:24
Пусть этим project занимается, заведи переменную у каждого модуля, deps, где хранятся ссылки на остальные модули, которые необходимы для работы этого модуля.

Перед вызовом init, проверяй, инициализировались ли все модули из deps, если нет

Инициализируй и только потом вызывай init текущего модуля

Google
Anton
12.08.2016
12:36:06
ок, буду смотреть в эту сторону, спасибо

Каїн
12.08.2016
12:40:33
как

что?!

какие вызывания методов модуля другим модулем

Anton
12.08.2016
12:41:32
прямые

Каїн
12.08.2016
12:41:52
это же самый чистый пример когда нужен медиатор

https://addyosmani.com/resources/essentialjsdesignpatterns/book/#mediatorpatternjavascript

Anton
12.08.2016
12:42:05
project.module2.checkForm.apply(project.module2);

Каїн
12.08.2016
12:42:07
если ты пишешь на ангуляре - фабрики выступают в роле медиаторов

Anton
12.08.2016
12:42:22
нет ангуляра

Каїн
12.08.2016
12:42:37
вот

еще лучше

вынеси безнес логику в отдельный файл-медиатор

доступ к которому будут иметь модули которые эту логику должны хендлить

на подключение есть реквает или импорт, что нра больше

Anton
12.08.2016
12:44:03
require тоже мож гляну на досуге

Каїн
12.08.2016
12:44:05
project.extend это путь миксинов какой то

Anton
12.08.2016
12:44:34
если под реквает имелся в виду require

Каїн
12.08.2016
12:44:36
The dictionary refers to a mediator as a neutral party that assists in negotiations and conflict resolution.

Алексей
12.08.2016
12:44:48
Google
Каїн
12.08.2016
12:44:58
рекваержс говно

ес6+ вебпак

или если чистая нода - нода 6.х

с имортами

вызывать метод модуля через другой модуль звучит как вызывать функцию клика чтобы вызвался онклик в жквери

$(xxx).click(() => $(yyy).click()); $(yyy).click(() => console.log(1))

это то что ты пытаешься сделать

$(xxx).click(() => mediator.method();) $(yyy).click(() => mediator.method();)

где у тебя только 1 представление и инстанс медиатора которій ті никуда не копируешь и не раздуваешь лишними пропертями инициальную стратегию (контроллер)

https://addyosmani.com/resources/essentialjsdesignpatterns/book/

реккомендую

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

Vladimir
12.08.2016
12:53:51
Каїн
12.08.2016
12:54:02
хуярни глобальную переменную медиаторы и туда пихай все подряд

http://largescalejs.ru/the-mediator-pattern/

Медиатор применяется в системах, где взаимодействие между модулями может быть весьма сложными, но, в то же время, хорошо определенными.

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

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

+ отучат использовать сайд еффекты

когда ты пишешь store.changeVariable(); // store.changeVariable = function () { store.x++ } вместо store.changeVariable = function (x) { x++; return x; }

Google
Каїн
12.08.2016
12:58:17
а потом навызывали методов и только догадываешься к каком сраном методе этот хе еще менялся

[Anonymous]
12.08.2016
13:33:06
Ребят

Кто-то юзал Dart?

Как ощущения?

Andrey
12.08.2016
14:12:01
[Anonymous]
12.08.2016
14:12:36
зачем? :)
Спрашиваю

Ну вдруг

Каїн
12.08.2016
14:18:32
Вот интересно

Admin
ERROR: S client not available

Каїн
12.08.2016
14:18:50
Есть ли Object observe полифил

а курва, его задепрекейтили

Pavel
12.08.2016
14:23:55
А вот про felt кто-то может что-то сказать? В плане использовал ли кто?

Vladimir
12.08.2016
14:24:57
что это?

Каїн
12.08.2016
14:25:22
https://www.npmjs.com/package/felt

новый грант

ы

Pavel
12.08.2016
14:26:36
Как я понимаю на экспресс заточенный

Vladimir
12.08.2016
14:27:21
> 2 downloads in the last day лол

кто же его пробовал?

знаю

Google
Vladimir
12.08.2016
14:27:35
тревис

Каїн
12.08.2016
14:27:38
ы

Вадим
12.08.2016
14:27:41
Новый грант? Я думал, грантом то уже никто не пользуется давно

не говоря уже про галп

Каїн
12.08.2016
14:28:06
и галпом пользуются

и бовером

и жквери 1.2

Вадим
12.08.2016
14:28:33
http://brunch.io/

Vladimir
12.08.2016
14:28:42
это не грант

Вадим
12.08.2016
14:28:48
я знаю, что это не грант...

Каїн
12.08.2016
14:28:57
ультра фаст, не успел написать как уже проект сдеплоился и в продакшене

Vladimir
12.08.2016
14:28:57
ну дурацкое сравнение

Вадим
12.08.2016
14:29:18
сравнение чего? Бранча с галпом?

Или галпа с грантом?

Vladimir
12.08.2016
14:29:28
фелта с грантом

Вадим
12.08.2016
14:29:30
аа

Каїн
12.08.2016
14:29:45
я не смог придумать хуже

прасцице

Вадим
12.08.2016
14:30:01
фелт этот скорее на вебпак похож

Каїн
12.08.2016
14:30:53
говняно ложатся короч веб воркеры на ангуляр фабрики

прийдется что то вроде редукса делать с экшенами

Страница 137 из 2237