2015-03-06 2 views
1

Есть ли простой способ объединить все файлы для polyfills webcomponents.js? Я использую полимер и, кажется, 2 основных места, которые значительно увеличивают количество сделанных запросов. Кажется, что webcomponents.js загружает около 70 файлов отдельно через javascript. Полимерные жесты - это второе место, которое вносит большой вклад в количество запросов, но гораздо меньше, чем webcomponents.js. Кто-нибудь имеет решение для этого, а не собирается и вручную комбинировать все файлы?webcomponents.js при использовании установки bower

Почему они этого не делают? Это кажется немного смешным. Даже если бы это сломало до 4 файлов для каждой из основных категорий полиполков, было бы намного лучше.

ОБНОВЛЕНИЕ: Я не могу получить даже example, указанный на сайте полимера, для работы при использовании вулканизации для уменьшения запросов. Я могу получить изображение, подходящее для пользовательского компонента (работающего). Он работает после вулканизации, но не сокращает почти любые запросы, потому что большинство из них создаются с помощью тегов скриптов, написанных на JS в webcomponents.js и polymer.js. Выполнение --inline полностью разрывает его, а компонент не загружается. Есть идеи???

UPDATE: При попытке примера я использовал ресурсы, которые я уже потянул за свой текущий проект. Я попытался в изолированной папке и снова вытащил ресурсы (беседка), и это действительно сработало. Что мне нужно выяснить сейчас - это все, когда я тяну его и почему? Ниже приведены мои файлы bower.json для неработающего дела и рабочий случай:

Сломанный:

{ 
    "name": "app", 
    "private": true, 
    "dependencies": { 
    "webcomponentsjs": "webcomponentsjs#master", 
    "polymer": "Polymer/polymer#master", 
    "core-drawer-panel": "Polymer/core-drawer-panel#master", 
    "paper-tabs": "Polymer/paper-tabs#master", 
    "core-icon-buttons": "Polymer/core-icon-button#master", 
    "core-toolbar": "Polymer/core-toolbar#master", 
    "core-animated-pages": "Polymer/core-animated-pages#master", 
    "core-header-panel": "Polymer/core-header-panel#master" 
    } 
} 

Рабочая:

{ 
    "name": "test", 
    "private": true, 
    "dependencies": { 
    "polymer": "polymer/polymer#~0.5.5", 
    "webcomponentsjs": "~0.5.5" 
    } 
} 

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

+0

когда я вулканизирую пользуюсь --csp --inline --strip, который дает мне весь мой проект в 2 файлах 1 html и 1 js. –

+0

Я полностью потерял, как это работает для вас. Я только что снова проверил их пример на сайте полимера. Я отправлю свою точную процедуру и результаты. Это абсолютно не работает для меня. Если я вообще - вообще, то это просто ломается. – Goblinlord

+0

попробуйте удалить папку bower_components и снова запустить беседку? Я ничего не вижу в файле, который выглядит неправильно для меня. ваш рабочий файл и мой оба имеют «полимер»: «Полимер/полимер», как первый элемент. я не думаю, что это важно./shrug –

ответ

3

Вы можете вулканизировать свой код на основе использования компонентов. Подробное описание на сайте Polymer:

https://www.polymer-project.org/articles/concatenating-web-components.html

+0

Отрицательный ... который добавляет исходный JS из тега скрипта ... он все равно загружает все отдельные скрипты через JS и не предотвращает исходную проблему (webcomponents.js загружает абсурдные количества отдельных скриптов). – Goblinlord

+0

Hm .. вам может понадобиться просто создать файл grunt и объединить их вручную ... – flyandi

+0

Итак, я сделал несколько тестов, только с примерами, которые они дали. Выполнение вулканизации (без переключателей) сокращает запросы только на импорт элементов. Выполнение --inline объединит все JS, как я хочу. Затем выполнение -csp -strip перемещает все JS в один внешний файл.Это значительно сокращает количество запросов и размер. Вместо этого в моем проекте (у меня были проблемы) я сделал это на примере с этого сайта. – Goblinlord

0

Итак ... Я нашел этот вопрос. Я искал #master вместо правильных версий, которые мне нужны. Фиксирование этого в значительной степени решило любые проблемы, которые у меня были.

Смежные вопросы