Conversation
size-limit report 📦
|
👀 Styleguide deployedSee the styleguide for this PR at https://vkcom.github.io/VKUI/pull/1628/ |
0db0cb3 to
05d836c
Compare
|
This pull request is automatically built and testable in CodeSandbox. To see build info of the built libraries, click here or the icon next to each commit SHA. Latest deployment of this branch, based on commit 6dfaa27:
|
05d836c to
97b2671
Compare
97b2671 to
f689aa5
Compare
| }, | ||
| output: { | ||
| path: path.resolve(__dirname, 'dist'), | ||
| filename: '[name].js.tmp', |
There was a problem hiding this comment.
то есть js будет два раза собираться в итоге?
There was a problem hiding this comment.
да. еще есть варики:
- собирать бабелем, потом по dist собирать цсс, но тогда вотч превращается в кошмар и вообще это как то нелепо
- писать бабель плагин который оставляет только импорты, но это точно не стоит 10 секунд сборки
There was a problem hiding this comment.
Да так то ок, просто может тогда и и сборку кода в вебпак унести? (в отдельном пр)
There was a problem hiding this comment.
К сожалению нет =( Из вебпака всегда вылезает один бандл (ну точно не по файлам), и тогда не получится три-шейкать цсс (ради чего всё и затевается), потому что это сайд-эффект импорт. Возможно можно придумать какое-то особо хитрое разбиение 1 компонент = 1 чанк, но пока непонятно станет ли лучше и возможно ли это
| }, | ||
| { | ||
| "selector": "ImportDeclaration[source.value=/\\.css$/i] ~ ImportDeclaration[source.value!=/\\.css$/i]", | ||
| "message": "CSS import must be last" |
There was a problem hiding this comment.
Это для консистентности кода?
There was a problem hiding this comment.
не, это чтобы правильный порядок цсс с одинаковой специфичностью был:
Button.css
.Button {
border-radius: 3px;
}Alert.css
.Alert__button {
border-radius: 0;
}Alert.tsx
// Button.css первый в CSS-бандле
import { Button } from '../Button/Button'
// Alert.css после всех CSS импортированных компонентов
import './Alert.css'
// Стили для Alert__button оверрайдят базовые стили Button
export const Alert = () => <Button vkuiClass="Alert__button" />f689aa5 to
6dfaa27
Compare
Продолжаем готовиться к модульным стилям по мотивам #1335 — переносим сборку CSS в вебпак, чтобы дальше потихоньку переносить импорты CSS в tsx-файлы компонент. Стили теперь собираются ~15с, но не думаю что это кого-то сильно расстроит. Это рефакторинговый ПР, сами (собранные) стили не меняются.