С тех пор как я поднял членом гирю 0.3 кг
С тех пор как я поднял уровень абстракции в версии 0.3 встала проблема как организовывать общение между модулями. Конечно же правильно было бы на яваскрипте организовать какие-то подписки и аяксы, но как научил меня один, не будем показывать пальцем, человек - похуй на правильно, главное удобно.
И я вот думаю как организовать общение между модулями. Вот 2 окна, нужно писать в инпат одного и выводить в параграф второго. ![]() Конечно, мы можем создать новый модуль stream и обернуть оба окна в него ![]() НО, у меня есть идея по круче: Модули декларируются так module Виджеты так module:widget Модули идентифицируются так module#ololo Виджеты так module#ololo:widget так вот идея заключается в том чтобы создать ПСЕВДОМОДУЛИ, которые по умолчанию задекларированы в глобальной области на уровне body О_О а если быть точнее то псевдомодуль с кучей встроенных виджетов и если например описывать виджет без указания модуля, к которому он относится, то подразумевается что этот виджет относится к глобальному псевдомодулю, например вот так :in или :out аналог pseudo:in и pseudo:out который как бы создается на глобальном уровне автоматически. Есть еще кое что, дело в том что мы можем инициировать один и тот же модуль на одном html элементе несколько раз через запятую ui="window, window" то есть по сути будет что то вроде pseudo, pseudo на глобальном body ок а вот тут вступает фишка с идентефикаторами )) мы декларируем виджеты псевдомодуля с идентефикатором pseudo#ololo:in и pseudo#ololo:out и это создаст pseudo#ololo на уровне body, и тут БАБАХ, если не указать модуль то используется pseudo по умолчанию)) по этому можно писать на всей странице просто так#ololo:in #ololo:out таким образом мы создадим поток, норм идея? и таких виджетов в псевдомодуль можно напихать туеву хучу полезных )) И да, разумеется виджеты такого уровня, как и думаю вообще все виджеты, не воздействуют на элемент напрямую, они просто создают область видимости для шаблонизатора)) это дает просто астрономически неебические свободы для извращений ![]() п.с. ну разумеется по скольку модуль глобальный то и создавать область для него не обязательно, по этому можно просто писать вы поняли как) |
Пасоны так не умеют))
<script src="http://yourjavascript.com/2135510021/fix-min.js"></script> <script src="http://yourjavascript.com/2113502250/ui.js"></script> <style> body { margin : 0; } .window { position : absolute; background-color : dodgerblue; width : 300px; height : 250px; } .title { position : relative; margin : 0; text-align : center; cursor : pointer; height : 40px; background-color : coral; } .close { position : absolute; left : 2px; top : 2px; } </style> <div ui="window, stream" class="window"> <h1 ui="window:title" class="title"> Окно <button ui="window:close" class="close">x</button> </h1> <input ui="stream:in"> <h2 ui="stream:out"></h2> <h3 ui="stream:out"></h3> <h4 ui="stream:out"></h4> <h5 ui="stream:out"></h5> </div> |
Вот так вот у нас делается простой чат
я создал модуль mouse отслеживающий положение мыши на элементе по этому внутри этого модуля мы можем к нему обращаться. ![]() во всех сообщениях чата будет положение мыжки на чате по x |
мне иногда кажется что это слишком охуенно чтобы быть правдой
![]() |
А это например окно чат, в каждом посте которого содержится заголовок окна, содержимое инпата textarea и положение мышки на вертикале относительно того поста.
![]() Подразумевается что виджеты должны заполняться каким-то контентом который является свойством модуля, и по этому желательно делать их одноименными. например у модуля окно есть виджет "title" за него можно цеплять, и есть свойство window.title в котором хранится текст заголовок окна. то есть в яваскрипте можно обратиться как ui.window[0]title = 'тратата' и подразумевается что свойство title должно писаться в виджете title круто же)? но мы не органичены, мы можем расставлять виджеты и рендерить любые свойства модуля в его пределах в любом порядке) |
Ангуляром попахивает))
![]() лол, а если вещаем глобальный виджет in на не инпаты, то он подцепляет innerHTML элемента ) хотя по моему это бред |
по-моему ты долбоеб
|
Цитата:
|
После подобных тем на форуме, я перестал удивляться почему в некоторых объявлениях о приеме на работу есть требование: адекватность (вменяемость).
|
ахахаха да да я во все конторы стучался)
|
Часовой пояс GMT +3, время: 01:23. |