2016-11-15 5 views
0

За день я боролся с серьезной проблемой. Я закончил разработку приложения Angular 1.5 + Webpack (так что все это компонент), и, хотя все работает как ожидается в Chrome/Firefox, когда я перешел на IE9, все развалилось. После некоторого исследования я обнаружил проблему: мой сгенерированный CSS был ~ 1 Мб, и поэтому он превосходит предел IE ~ 4000 правил CSS.Webpack генерирует большие файлы CSS для IE9

Они не являются некоторые из вещей, которые я пытался до сих пор:

  • Пробовал с помощью css-split-webpack-plugin: даже не работает, сбой при компиляции.
  • Удаленные исходные карты: оно уменьшилось до 500 килобайт (все еще недостаточно)
  • Перемещена одна внешняя библиотека в другую точку входа в webpack: один CSS с ~ 130 kbs (OK) и еще один с ~ 320 kbs (НЕ ОК).

Прошлое этот момент, я зашел в тупик

@import 'mixins'; 
@import 'variables'; 
@import 'multipurpose/multipurpose'; 

/* Component styles are injected through gulp */ 
/* inject:scss */ 
@import '../../components/advertising/advertising'; 
@import '../../components/cityforecast/city-forecast'; 
@import '../../components/cityforecast/weatherforecast/fivedays-forecast/fivedays-forecast'; 
/* endinject */ 

Мои компоненты зависят от SCSS Mixins, переменных и многоцелевых файлов, и я не знаю, как я могу разделить эти файлы еще больше. Я предполагаю, что одна идеология будет иметь все CSS-файлы компонентов как одну точку входа в Webpack, но это будет контрпродуктивно, и со временем она войдет в проблему «максимум-css-files-ie9-can-support».

Любая помощь будет оценена, спасибо заранее.

+0

Попробуйте использовать ['code-splitting'] (http://webpack.github.io/docs/code-splitting.html), который будет загружать компоненты (должен включать css там) по запросу – Thaadikkaaran

+0

@JaganathanBantheswaran Я попробовал и я сделал это для каждого компонента и их CSS (он работает только для css, но он не очень помогает мне). Но если я попытаюсь это сделать, когда я включу компоненты в угловом модуле, это не сработает с «undefined» модуля. « – Bernardo

+0

Можете ли вы показать, как вы это делали для компонентов? – Thaadikkaaran

ответ

0

Ну, после 1,5 дней борьбы с этой проблемой я наконец нашел решение, и я буду навсегда благодарен программисту, который выпустил это!

BlessCSS Webpack Plugin

Я не знал, благослови и, узнав, что я сделал быстрое исследование на WebPack, пытался also this one, но это не сработало.