YUI Theater - Джефф Крейг: "Прояснение Loader: Advanced Configuration Модуль" (31 мин.)
16 декабря 2011 в 10:10 Райан Grove | В развитие , Юй театр | Комментариев нетВ этом докладе от YUIConf 2011, Meebo инженер и YUI вклад Джефф Крейг ( @ foxxtrot ) показывает все, что вы всегда хотели знать о YUI Loader, но боялись спросить. Это необходимо посетить для тех, кто делает производительность критически важных работе с YUI 3.
Связи
Делите и расширить: закладки с del.icio.us | Digg It! | Reddit!
Юй: Часы работы Чт 15 декабря
13 декабря 2011 в 11:59 Эрик Ferraiuolo | В развитии , Часы | Комментариев нетYUI 3.5.0 PR1
YUI 3.5.0 PR1 теперь доступна ! Это первый из трех-релизы для просмотра 3.5.0.
Для этого Часы работы мы будем выделяя то, что в PR1 и обсуждали, как вы можете принять участие, чтобы убедиться, 3.5.0 является скала. Мы также будем просить шоу-о-руки с удивительными разработчиками, которые уже начали использовать 3.5.0 PR1 (что на CDN ). Приходите четверг, не попадитесь в руки вниз :)
Кроме того, постановка YUI Library сайт был обновлен с новыми руководства пользователя и API документацию, и в ответ на обратную связь от последнего Часы работы , мы, используя нашу GitHub вики отслеживать текущее обсуждение развития .
Запись
Запись доступна на YouTube канал YUILibrary .
Делите и расширить: закладки с del.icio.us | Digg It! | Reddit!
App Framework Изменения в YUI 3.5.0
12 декабря 2011 в 3:40 вечера Райан Grove | В развитие | 1 комментарийС первого выпуска App Framework в YUI 3.4.0, мы были поражены, как быстро он был принят. В проектах большой и маленький , как давно Юй пользователей и тех, кто совершенно новое в библиотеке были с энтузиазмом восприняты помощью App Framework, MVC компоненты и обеспечивая большую обратную связь и сообщения об ошибке. Спасибо!
В YUI 3.5.0, Рамочная App получите много исправляет ошибку и некоторые значительные усовершенствования. Эрик Ferraiuolo охватывает многие из предстоящих изменений в его фантастический разговор YUIConf , но мы хотим, чтобы выделить их здесь, а поэтому вы будете знать, что будет и то, что вы должны готовиться к, если вы планируете модернизировать приложения на основе платформы код 3.4.x на 3.5.0. Эти изменения уже в YUI 3.5.0 PR1 , который был выпущен сегодня, так что сейчас самое время начать их тестирование.
Y.Controller сейчас Y.Router
"Контроллер" была глупой и запутанным имя компонента, который действительно заботится больше с URL-маршрутизации на основе, особенно учитывая более традиционно-контроллер, как роль, которую играет Y.View. Мы решили стиснуть зубы и переименовать Y.Controller класса Y.Router в 3.5.0. Y.Controller станет псевдоним сохранить обратную совместимость, но это псевдоним в конечном итоге будут удалены, так что вы должны обновить свой код для ссылки на новое имя.
Новая подпись обработчик маршрута
Сигнатуру метода для маршрута функции обработчика в Y.Router изменился незначительно, чтобы сделать его более похожим на экспресс и сделать API маршрутизатора более естественно при использовании на сервере (функция в настоящее время мы работаем над для 3.5.0).
Ранее функции обработчика маршрут получил два аргумента: req (объект запроса) и next (функции). В 3.5.0, маршрут обработчики получат три аргумента: req , res (объект ответа), а затем next .
В целях обратной совместимости, новые res аргумент также является функцией, которая ведет себя так же, как next , так что старый стиль маршрут обработчики, которые ожидают next в качестве второго аргумент будет продолжать работать и в 3.5.0. Тем не менее, эта совместимость прокладку в конечном итоге будут удалены, поэтому не стоит ждать слишком долго, чтобы обновить свой код.
Некоторые свойства являются теперь атрибутами
Мы экспериментировали с не-совсем-Юй-подобный стиль с использованием свойств для настраиваемых параметров в компонентах App Framework в 3.4.0, но это оказалось немного запутанным и более чем немного ограничены, так как свойства не получают от изменения событий, сеттеры, и валидаторы, как атрибуты делают. Таким образом, в 3.5.0, мы преобразовании многие из этих свойств атрибутов.
К сожалению, это изменение не имеет обратной совместимости, так что существующий код, который использует Y.Controller (ныне Y.Router) или Y.View возможно, должны быть обновлены. В частности, Y.Router "с html5 , root и routes свойства теперь атрибуты и Y.View "с container , model , и modelList свойства теперь атрибуты, а также.
В дополнение к этому, Y.View автора container атрибут сейчас рассматривает строку значения CSS селекторов используются для поиска узлов на странице. В 3.4.x, то предполагается значение строки представлены сырье HTML, который должен быть преобразован в узел. Чтобы получить старое поведение, просто изменить существующий HTML значения строки из '<div>foo</div>' , чтобы Y.Node.create('<div>foo</div>') .
Документация 3.5.0 PR1
Работа в стадии разработки документации на эти изменения и другие изменения в YUI 3.5.0 PR1 можно найти на нашем веб-сайте постановка . Вот некоторые ссылки на соответствующие документы, которые постановка включает информацию о App Framework устаревшими в 3.5.0 и подробные сведения о том, как обновить код:
Обратите внимание, что содержание в stage.yuilibrary.com отражает текущую работу в прогресс и может быть неполной или даже иногда разрывается мы тестируем новый материал. Вы всегда сможете найти документацию к последней стабильной версии на нашей производственной площадке, yuilibrary.com .
Что еще нового?
В этом посте я кратко важных устаревшими подходит к App Framework в 3.5.0, но есть также множество улучшений и функций под капотом исправляет ошибку. Полный список App Framework изменения в 3.5.0 PR1, обратиться к истории файла .
Кроме того, обратите внимание на сообщение в блоге от Эрика вскоре о Y.App, удивительным новых высокоуровневых компонент App Framework, который завершает URL-маршрутизация и управление видом в один простой в использовании API, который будет вам от нуля до работающего приложения в кратчайшие сроки.
Мы надеемся, что вы любите предварительный релиз, и мы хотели бы услышать от вас! Вы можете отправить нам свои пожелания в форуме , в отчете об ошибке , на Twitter , на # юй IRC канал на Freenode, или просто звонить сюда с комментарием.
Делите и расширить: закладки с del.icio.us | Digg It! | Reddit!
YUI 3.5.0 PR1 уже в продаже
12 декабря 2011 в 3:36 вечера Аллен Рабинович | В развитие | Комментариев нет
YUI 3.5.0 Предварительный просмотр Release 1 была развернута для проверки и обратной связи с сообществом разработчиков. Вы можете найти на Yahoo! CDN в yui.yahooapis.com/3.5.0pr1/build/yui/yui-min.js или скачать ZIP файл , если вы планируете провести его самостоятельно.
Накопительный пакет изменений, внесенных в PR1 можно найти на нашем GitHub Wiki. Кроме того, вы можете просмотреть список билетов, которые были решены в этом выпуске .
Работа в стадии разработки инструкций и API документацию для 3.5.0 можно найти на нашем сайте постановка, но нужно учитывать, что эти документы могут быть неполными или даже нарушается, так как это, где мы тестируем новый материал. Официальные документы для последней стабильной версии всегда можно найти на нашей производственной площадке, yuilibrary.com .
Более изменения будут внесены в предстоящих релизов предварительный YUI 3.5.0, некоторые из них в настоящее время свои филиалы разработчиков и доступны для первоначального рассмотрения по следующим запросам притяжения:
Чтобы подать ошибок против этой версии, пожалуйста, посетите наш ошибка системы слежения . Если вы хотите внести свой вклад в это будущее и модулей, ведущихся дискуссий на различные темы, связанные с 3.5.0-релизе, происходит у нас на GitHub вики.
Если все пойдет по плану, мы надеемся выпустить YUI 3.5.0 PR2 30 января 2012 года. С праздником!
Делите и расширить: закладки с del.icio.us | Digg It! | Reddit!
YUI Theater - Аллен Рабинович: "Юй календарь - Case Study строительных модулей с Стиль" (47 мин.)
8 декабря 2011 в 1:02 вечера Райан Grove | В развитие , Юй театр | Комментариев нетВ этом докладе от YUIConf 2011, YUI инженер Аллен Рабинович ( @ allenr ) разделяет процесс, который он использовал для архитектора и построить новый виджет календаря в YUI 3, и объясняет, как можно использовать аналогичный процесс для создания собственных виджетов. Он также демонстрирует новый компонент и показывает производительность хитрый трюк используется для ускорения рендеринга нескольких календарей.
Связи
Делите и расширить: закладки с del.icio.us | Digg It! | Reddit!
YUI Theater - Пэт Cavit: "Автоматизация Оптимизация сайта" (32 мин.)
6 декабря 2011 в 2:58 вечера Райан Grove | В развитие , Юй театр | 2 комментарияПэт Cavit ( @ tivac ), интерфейс инженер ArenaNet и активным участником YUI и членом сообщества, присоединилась к нам в 2011 году YUIConf дать этот разговор об автоматизации сборки времени сайт оптимизации, такие как объединение файлов, Минимизация, переименование, и больше, используя Ant инструмент для сборки.
Связи
Делите и расширить: закладки с del.icio.us | Digg It! | Reddit!
В YUI 3 Галерея: Bulk Widget редактор
5 декабря 2011 в 1:01 вечера Джон Lindal | В развитии , YUI 3 Галерея | Комментариев нетПлагин QuickEdit для YUI 3 DataTable позволяет легко редактировать всю страницу записей как атомарная операция. Однако, иногда вам нужно сделать еще больше. Например, вы можете иметь одновременно редактировать несколько записей, чем вы можете умещаться на одной странице. Или вы, возможно, потребуется поддержка добавления, копирования и удаления записей в рамках элементарной операции. Или вы, возможно, пожелает поля визуально группы, поместив их в одну ячейку таблицы. Массовые редактор виджет поддерживает все эти возможности.
( Нажмите на скриншот, чтобы играть в этом примере ).
Обзор
Массовые виджет Редактор состоит из трех компонентов:
-
Data source Это завершает YUI DataSource, и управляет изменениями: вставки, удаления и изменения значения.
-
Base widget Это обеспечивает базовую структуру для редактирования, управления записями и полей в каждой записи. Производные классы отвечают за оказание каждой записи в отдельную
строку,
которая может быть дел, TBODY или другой контейнер.-
HTML table implementation Это расширяет базу виджет для отображения каждой записи в TBODY в виде таблицы. Колонка конфигурации определяет, какие поля отображаются в каждом столбце таблицы. Пользовательские форматирования ячейки может быть использован для отображения нескольких полей в одной ячейке таблицы.
Конфигурация
В примере, который сгенерировал на скриншоте выше, конфигурация была сохранена как можно более простым:
fields определяет редактируемые значения в каждой записи. По умолчанию тип входа.
Другие действительные типы выбора
и текстового поля.
(Выберите
требуется список значений.) Основные проверки предоставляется Form Manager модуль галереи. Это покрывает необходимые поля, ограничения на длину и числовые диапазоны . Более сложная проверка может быть выполнена путем указания regex или ваши собственные функции ( fn ). Вот выдержка из живой пример:
уаг поля = { Название: { типа: "текстовой" } год: { проверки: { CSS: "yiv-целое: [1500,2100] ' } } Цвет: { типа: «Выбрать», значения: [ {Значение: "красный", текст: 'Красный'}, {Значение: «зеленый», текст: 'Зеленые'}, {Значение: «синий», текст: "Blue"} ] } };
Y.BulkEditDataSource требуется экземпляр Y.DataSource и следующие параметры:
-
uniqueIdKey Имя ключа, который однозначно идентифицирует каждую запись.
-
generateRequest Функция для получения параметров запроса для
Y.DataSource. (Это пустой в пример, потому чтоY.DataSource.Localвсегда возвращает все данные.)-
extractTotalRecords Функция для извлечения общее количество записей с
Y.DataSourceответ.
Поскольку пример использует Y.DataSource.Local , totalRecordsReturnExpr также требуется. Это OGNL выражение определяет, где в ответ на хранение от общего числа записей. (Обратите внимание, что extractTotalRecords читает это значение).
уаг DS = новый Y.BulkEditDataSource ( { DS: raw_ds, uniqueIdKey: «идентификатор», GenerateRequest: функция () {}, totalRecordsReturnExpr: '. meta.totalRecords, extractTotalRecords: функции (ответ) { вернуться response.meta.totalRecords; } });
Y.HTMLTableBulkEditor требуется источник данных, конфигурации поля, а в столбце конфигурации. В столбце конфигурации, ключ имя поля, если не указано пользовательское форматирования. Метка используется в качестве заголовка столбца. Вот выдержка из живой пример:
уаг столбцов = [ { ключ: «флажок», знака: "<input type="checkbox" id="select-all" />, форматирования: функция (о) { уаг разметки = '<input type="checkbox" class="record-select" id="{id}" />'; o.cell.set ('InnerHtml, Y.Lang.sub (разметка, { ID: this.getRecordId (o.record) })); } } {Ключ: "Название", этикетка: "Заголовок"}, {Ключ: 'год', этикетка: "Год"}, {Ключ: 'цвет', этикетка: «Цвет»} ];
(Заметим, что живой пример определяет незначительное расширение Y.HTMLTableBulkEditor обрабатывать флажок колонки).
Вы также можете передать экземпляр Y.Paginator в Y.BulkEditDataSource . Это проявляется в отдельных, более сложных живой пример .
Местное против удаленных источников данных
При принятии решения, следует ли использовать локальный или удаленный источник данных, необходимо тщательно рассмотреть вопрос о компромиссах. Очевидно компромисс в том, что местный источник данных происходит быстрее, когда разбиения на страницы, но первоначальная загрузка страницы займет больше времени и требует больше памяти на стороне клиента.
Массовые виджет редактор накладывает дополнительные компромиссы, однако.
Во-первых, YUI DataSource, должны вернуться неизменные данные. Это происходит автоматически по данным местных источников, но может быть сложным для реализации удаленных источников данных. Вам нужно будет блокировать строки в таблице базы данных на время операции массового редактирования, если более чем одному пользователю разрешается изменять их.
Во-вторых, выбор между локальным и удаленным источником данных влияет, как вы позволили, чтобы сохранить данные. При использовании локального источника данных, вы можете сделать все возможное
экономии, то есть сохранить все действующие записи на сервере, удалите их из местного источника данных, и позволяет пользователю сосредоточиться на записи, которые имеют недопустимые значения. При использовании удаленного источника данных, неизменность требований только позволяет вам делать все, или ничего не
экономить, то есть, данные могут быть сохранены только после того, как все данные верны.
В реальном мире прецедентов
Исходным мотивом для массовых виджет Редактор было, чтобы после обработки загружены таблицы. Представляя пост-обработки шаг устраняет необходимость в таблице значения должна быть совершенной. Ошибки могут быть отмечены и зафиксированы в массовых виджет редактор, а не отказ от всей загрузки. Кроме того, обработка на сервере может делать лучше всего, предположение назначение дополнительных значений, необходимых для каждой записи, и пользователь может проверить и исправить эти дополнительные ценности перед сохранением. Это упрощает первоначальную создание таблицы.
В этом сценарии удаленного источника данных является лучшим выбором. Загруженные данные хранятся в рабочее пространство, и поэтому гарантированно неизменными, так как никакой другой пользователь не может видеть. "Все или ничего" экономии уместно: После того как все ошибки были исправлены, операция сохранения атомной, так же, как стандартные операции загрузки.
Делите и расширить: закладки с del.icio.us | Digg It! | Reddit!

Copyright © 2006-2012 компании Yahoo! Inc Все права защищены. Политика конфиденциальности - Условия предоставления услуг
Работает на WordPress на Yahoo! Веб-хостинг .

