|
Результаты опроса: Как вам UI
|
|
Похоже на унылое говно
|
|
20 |
68.97% |
Однозначно буду использовать
|
|
7 |
24.14% |
Пока не разобрался что это
|
|
2 |
6.90% |
|
25.10.2013, 06:40
|
Аспирант
|
|
Регистрация: 25.10.2013
Сообщений: 30
|
|
Сообщение от Shaci
|
хотя я не верю, что у тебя что-то получится
|
А тя не смущает что оно УЖЕ работает)?
FRP в действии - Ни одного события, просто задекларированное состояние системы:
<script src="http://mychamber.ru/lib/ui.js"></script>
<style type="text/css"> .todo:hover { background-color : #b7e2ff } </style>
<div ui="widget">
<div for="todos as todo" class="todo">
<input bind="todo.selected" type="checkbox">
{todo.selected} | {todo.text}
</div>
<hr>
<div for="selectedTodos as todo" class="todo">
{todo.text}
</div>
</div>
<script>
ui['widget'] = function() {
this.todos = [
{text: 'погулять ', selected: false},
{text: 'попить пива', selected: false},
{text: 'разработать ui', selected: false},
{text: 'покакать', selected: false},
{text: 'сжечь документацию ангуляра', selected: false}
];
this.selectedTodos = '{todos.filter(todo=>todo.selected)}';
};
</script>
Тут показаны все фитчи: FRP, стрелочные функции и формулы =)
События селекторы и коллекции конечно тоже работают, там первым аргументом передается $ который всем этим занимается аля jQuery, но мы планируем от него отказаться в пользу полной декларативности =) по этому я его не использовал в демо и убрал половину примера ToDo (например убрал кнопочки добавления и удаления тудушек)
В будущем в формулах кстати можно будет использовать специальные значения вроде $mouse.x или $location и.т.п.
Последний раз редактировалось __Maxmaxmaximus__, 25.10.2013 в 07:24.
|
|
25.10.2013, 10:28
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
__Maxmaxmaximus__,
ты хотя бы обернул код в Function Expression .
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
25.10.2013, 14:06
|
Аспирант
|
|
Регистрация: 25.10.2013
Сообщений: 30
|
|
Сообщение от cyber
|
ты хотя бы обернул код в Function Expression
|
спасибо но пока это не требуется) я ж не выпускал еще. хотя щас как раз всякие константы выносить в переменные буду, заодно и оберну.
Сообщение от Дзен-трансгуманист
|
ничего не смущает?
|
Спасибо) друга попросил составить коды и названия) на будущее, составил блин)
p.s. Прошу модерацию форума вынести предупреждение человеку, оскорбившему меня, от зависти, в карму. Спасибо.
Последний раз редактировалось __Maxmaxmaximus__, 25.10.2013 в 14:23.
|
|
25.10.2013, 20:00
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
__Maxmaxmaximus__, и что ты код лучше сжался лучше делать так.
К примеру
(function () {
var HTM_proto__ = HTMLParser.prototype;
function HTMLParser() {
// body function
}
HTM_proto__._splitTextNodesAtTheTags = function () {
};
window.HTMLParser = HTMLParser;
} ());
П.с __Maxmaxmaximus__ и хватит уже разводить срачь, если хочешь что не "бросали камнями"
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
25.10.2013, 20:30
|
Аспирант
|
|
Регистрация: 25.10.2013
Сообщений: 30
|
|
Сообщение от cyber
|
и хватит уже разводить срачь
|
Приведи хотя бы один пример когда я разводил срач за последние месяца 3.
Сообщение от cyber
|
и что ты код лучше сжался лучше делать так.
|
а гугл компиллер в экстримальном режиме сможет заинлайнить такие методы?
|
|
25.10.2013, 21:04
|
|
I am Student
|
|
Регистрация: 17.12.2011
Сообщений: 4,415
|
|
__Maxmaxmaximus__,
хм я ошибся, я почему то думал что лучше сожмет, а получилось так, так что забей.
(function(){function a(){}a.prototype._splitTextNodesAtTheTags=function(){};window.HTMLParser=a})();
__________________
Цитата:
|
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
|
|
|
26.10.2013, 00:17
|
Аспирант
|
|
Регистрация: 25.10.2013
Сообщений: 30
|
|
Сообщение от cyber
|
я почему то думал что лучше сожме
|
А ни чо что на сайте статьи есть и тесты как оно лучше сжимается)?
Что мыл елси способом как я делать то он инлайнит функции доставая код из них и обьединяя в одну функцию и.т.п. ты не читал?
|
|
26.10.2013, 01:02
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от __Maxmaxmaximus__
|
p.s. Прошу модерацию форума вынести предупреждение человеку, оскорбившему меня, от зависти, в карму. Спасибо.
|
Хочешь, чтобы она утвердила тебе карму?! Ты сам выбрал этот путь, тот который у тебя в карме. Так что хватит ныть, выкладывай свой код и начинай писать на него доки. А то как гласит твоя карма, ты на форуме не популярен.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
26.10.2013, 14:18
|
|
Профессор
|
|
Регистрация: 30.04.2012
Сообщений: 3,018
|
|
Дзен-трансгуманист, вопрос конечно не в тему, но... почему у тебя всегда "Сообщений: 207"? Не зависимо сколько пишешь ты сообщений на форум.
|
|
26.10.2013, 15:55
|
Аспирант
|
|
Регистрация: 25.10.2013
Сообщений: 30
|
|
Сообщение от Дзен-трансгуманист
|
Плюс 1К, минус 1К - сотня килобайт кода парсится за считанные миллисекунды. Экономить их, все равно что копейки на дороге подбирать.
Архитектура это основа функциональной модели - ее нужно писать с упором на гибкость и целостность внутренней структуры, а не исходя из объема кода.
|
я вчера это осознал и рефакторю вторые сутки) в принципе как не странно абстракция поднялась а обьем кода уменьшился, и все стало логичнее. Инкапсулировал некоторые штуки в классы. Оч много думал где есть НУЖДА создать сущнгость а где нету. Боялся что Окам придет за мной с бритвой) В итоге создание сущности Scope позволило дико оптимизировать рендеринг, добавил систему подписок и дерево зависимостей и все это смотрится красиво и логично)
Раньше у меня был обсервер который при эплаях смотрел что в модели изменилось а что нет, и перерендеривал то что изменилось. Щас же я просто анализирую код который может что-то изменить и смотрю что он МОГ изменить а что НЕТ, потом проверяю это на изменения и запускаю дерево зависимостей сделать перерасчеты этих веток дерева)
Последний раз редактировалось __Maxmaxmaximus__, 26.10.2013 в 15:58.
|
|
|
|