1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/luyongfugx-rstoreinc

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
readme.md

Использование плагина storeinc для локального хранения и инкрементного обновления в RequireJS

Был написан плагин storeinc для RequireJS с использованием алгоритма инкрементного обновления. Метод использования следующий:

  1. Сначала используйте модифицированный r.js для обфускации и упаковки, конфигурация сборки следующая (см. build.js в папке js/requirejs):

    ({ appDir: "../demo/js", baseUrl: "./", dir: "../demo/dist",// путь хранения файлов без инкрементных обновлений paths: { log: "a", storeinc:"../storeinc"// здесь плагин }, storeinc: true,// указывает на использование плагина storeinc storedir: "../demo/storeincdist",// путь сохранения обфусцированных файлов, включая инкрементальные файлы lastver:"2", // предыдущий номер версии, если не указано, что это первая упаковка ver:'3',// номер новой версии chunkSize:12,// размер блока инкрементного обновления modules: [ { name: "test", exclude: [ "log","b","c","d","storeinc" ] }, { name: "log", exclude: [ "storeinc" ] }, { name: "b", exclude: [ "storeinc","log" ] } ] })

  2. Запустите команду node r.js -o build.js.

При первом запуске: lastver:"1", // предыдущий номер версии, если не указано, что это первая упаковка ver:'2',// номер новой версии.

Затем измените каждый исходный файл в каталоге js и при втором запуске: lastver:"2", // предыдущий номер версии, если не указано, что это первая упаковка ver:'3',// номер новой версии.

Далее добавьте следующий код в index.html (см. index.html в папке js/requirejs):

<script> // Конфигурация, связанная с storeinc var require = { ver:"3",// текущая версия storeproxy:false,// использовать ли прокси-сервер для расчёта инкрементного обновления paths: { storeinc: '../storeinc'// путь к плагину инкрементного обновления } }; </script>

// Загрузка основного ресурса, обратите внимание на префикс storeinc! для включения плагина

<script data-main="storeincdist/storeinc!test" src="require.js"></script> <script type="text/javascript"> requirejs.config({ paths: { log: [`enter code here` 'a' ], b: [ 'b' ], c: [ 'c' ], d: [ 'd' ], e: [ 'e' ] } }); </script>

Также необходимо добавить префикс storeinc! перед каждым зависимым файлом в бизнес-логике, например, в test.js:

require(['storeinc!log','storeinc!c','storeinc!d'], function (log, modC, modD) { log.write('test3 run!!'); log.write('module c's name is ' + modC.name); log.write('module d's name is ' + modD.name); });

Теперь посмотрим на эффект: Сначала мы устанавливаем значение ver в index.html равным 2, а затем открываем index.html. Мы обнаруживаем, что доступ осуществляется к test-2.js и другим файлам версии 2. Во второй раз мы устанавливаем значение ver в index.html равным 3, указывая, что на этот раз нам нужен контент версии 3. Мы обнаруживаем, что доступ осуществляется к файлу test-2_3.js. Это означает, что мы достигли цели инкрементного обновления.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

**js локальное хранилище и инкрементальное обновление requirejs плагин.** *Примечание: в запросе нет информации о том, что именно нужно сделать с текстом. Поэтому ответ представляет собой дословный перевод.* Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/luyongfugx-rstoreinc.git
git@api.gitlife.ru:oschina-mirror/luyongfugx-rstoreinc.git
oschina-mirror
luyongfugx-rstoreinc
luyongfugx-rstoreinc
master