Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.05.2013, 22:51
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

Извините что создаю еще одну тему, но мне нужна помощь и ваше мнение
Короче синтаксис такой


Если модуль не имеет айдишника, то ему как айдишник дается уникальный порядковый номер от 0, если имеет то имеет.

У виджетов то же самое, айдишники виджетов уникальны для каждого модуля. Айдишники модулей уникальны для всего проекта.

оранжевым показаны айдишники модулей
зеленым показаны параметры конструктора модуля ^__^
голубым показаны обсерверы модуля
сиреневым показан айдишник виджета

Айдишники модулям нужны вот зачем



Как нам обратиться к внешнему модулю?

а вот так


как нам обратиться к глобальному модулю mouse который навешан на body??

а вот так


все глобальные модули имеют айдишник Global (с большой буквы для наглядности)


Зачем модулям нужны параметры? Ну вот пример:
первым аргументом принимает класс который будет присваиваться активный пунктам)




и еще кое что, ЭТО - один уровень и одна область видимости.



И немного по поводу обсерверов.

так работает обычный чат, в свойстве input хранит значение виджета input



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



Крута)?

Так пасоны, еще я разработал спецификацию обсерверов из 0.4

Всего существует 4 вида обсерверов.

1) свойство -> свойство
2) функция -> функция
3) функция -> свойство
4) свойство -> функция


1) свойство -> свойство
изменение свойства href модуля location засунет значение этого свойства в свойство active модуля slider и вызовет перерендеринг.




2) функция -> функция
вызов этой функции модуля menu (то есть если модуль menu или сам или кто-то вызовет эту функцию у себя) вызовет функцию next у слайдера, и первым аргументом передаст в неё то, что вернула функция onchange


3) функция -> свойство
вызов функции onchange модуля menu положит в свойство next слайдера то, что вернула эта функция


4) свойство -> функция
если свойство onchange сменит свое значение, то вызовется функция next и первым аргументом в неё передастся это значение.


Видите как круто)? Модули соединяются друг к другу без каких либо прослоек, так что у вас не выйдет прикрутить неподходящий модуль к неподходящему. придется изворачиваться и это послужит положительным делом. Я чуть позже обьясню в чем положительность)

вы научитесь разрабатывать модули так, чтобы все они имели четкие оговоренные интерфейсы. вы научитесь айдишники давать так, чтобы они везде соответствовали друг другу. (ко коко зависимость - нет блять ты просто не так мня понял) Я обьясню:



вот это вот



аналог этого


просто айдишники ставятся автоматически (да да, по этому запрещено использовать цифры если указываешь айдишник руками)

так вот, айдишник активного пункта меню хранится в свойстве active этого модуля то есть там в коде this.active = "2" например

так вот если мы делаем так



то айдишники раздаются так



и например если выбран пункт с айдишником home то в свойстве this.active = 'home'

так вот, я буду пилить стандартные модули по таким условностям и договоренностям, например если в модуле что-то переключается, то это будет храниться в свойства active, итемы иметь имя виджета item и.т.п.

и буду призывать чтобы и сторонние модули так же писали используя этот стиль.

Так вот, зачем это нужно спросите вы? А вот зачем)



ТАДААААААААААМ, слайдер переключается от пунктов меню)!!!

Последний раз редактировалось megaupload, 27.05.2013 в 12:23.
Ответить с цитированием
  #2 (permalink)  
Старый 26.05.2013, 22:53
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

зачем нужны айдишники и почему нужно их самому указывать?
Ответить с цитированием
  #3 (permalink)  
Старый 26.05.2013, 23:07
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от megaupload
Зачем модулям нужны параметры? Ну вот пример:
первым аргументом принимает класс который будет присваиваться активный пунктам)
этого не должно быть в вёрстке.

суй настройки модуля в другое место, но не в представление

айдишники, конечно, спасают ситуацию в общении между модулями, но я не могу придумать ни одного реального случая, когда это потребуется
Ответить с цитированием
  #4 (permalink)  
Старый 26.05.2013, 23:08
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

И да, разумеется вы можете сделать (я - сделаю) модули достаточно умными)

например модуль меню если не обнаружит ни одного виджета item то применит свою "менюшность" к порсто вложенным элементам



^__^

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

Сообщение от melky
суй настройки модуля в другое место, но не в представление
я вот и думаю, логика в яваскрипте, внешность в css а где все это соединять? структурировать! по моему HTML как раз для этого и нужен.

И вообще есть идеи где описывать такие зависимости модулей от стилей?

Сообщение от melky
но я не могу придумать ни одного реального случая, когда это потребуется
в принципе да, обычно логики ТАКОГО УРОВНЯ описываются в js коде модулей и иногда проще новый модуль создать и применить. но мне кажется надо дать возможность делать нечто такое не залазя в яваскрипт.

Последний раз редактировалось megaupload, 26.05.2013 в 23:20.
Ответить с цитированием
  #5 (permalink)  
Старый 26.05.2013, 23:19
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

И кстати вопрос, похоже это на ангуляр? и сильно ли? хуже ли это или лучше?
Ответить с цитированием
  #6 (permalink)  
Старый 27.05.2013, 02:02
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

проверял тут работу парсера в извращеных условиях)



тестил на баги))
как думаете, к какому модулю отнесется этот виджет)?
к верхнему window или к тому что с ним на одном уровне)?

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

какой модуль должен подцепить обсервер?
внешний или который на этом же уровне?

Последний раз редактировалось megaupload, 27.05.2013 в 02:14.
Ответить с цитированием
  #7 (permalink)  
Старый 27.05.2013, 10:52
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Можете тебе на форуме раздел выделить ?
Ответить с цитированием
  #8 (permalink)  
Старый 27.05.2013, 11:08
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

я уже выделил) а если серьезно то все ровно ни кто не пишет в оффтопике. но меня самого уже бесит что не могу найти нужную тему про свой x-ui.js
вот я хочу поговорить про обсерверы, где мне можно это сделать? Добавь вообще возможность удалять темы создателям, я бы давно все свои темы удалил если честно.
Ответить с цитированием
  #9 (permalink)  
Старый 27.05.2013, 11:28
Аватар для simple
Профессор
Отправить личное сообщение для simple Посмотреть профиль Найти все сообщения от simple
 
Регистрация: 23.09.2010
Сообщений: 247

Сообщение от megaupload Посмотреть сообщение
я уже выделил) а если серьезно то все ровно ни кто не пишет в оффтопике. но меня самого уже бесит что не могу найти нужную тему про свой x-ui.js
вот я хочу поговорить про обсерверы, где мне можно это сделать? Добавь вообще возможность удалять темы создателям, я бы давно все свои темы удалил если честно.
что написана пером, не вырубишь и топором, думать надо прежде чем что то писать
__________________
На начальном этапе события могут казаться случайными, но постепенно проявляется связь, и в конце концов все части целого складываются
Ответить с цитированием
  #10 (permalink)  
Старый 27.05.2013, 11:30
Аватар для megaupload
Профессор
Отправить личное сообщение для megaupload Посмотреть профиль Найти все сообщения от megaupload
 
Регистрация: 18.01.2013
Сообщений: 1,098

Сообщение от simple
что написана пером, не вырубишь и топором, думать надо прежде чем что то писать
удалил бы я не потому что стыжусь этого а потому что это все можно обьединить в один пост.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мой собственный башорг в скайпе))) devote Оффтопик 81 03.10.2012 00:56
Психологическая деформация программистов DreamTheater Оффтопик 59 24.03.2012 05:03
нужна помощь по таймеру или что то в этом роде Arkinsstoun jQuery 3 05.01.2012 14:55
фрактальный сыр x-yuri Оффтопик 76 23.11.2011 21:59
О фрилансе (Личный опыт) free Оффтопик 105 18.08.2011 17:02