Size: a a a

2020 November 14

AP

Alexander Ponomarev in Svelte [svelt]
они останутся первее стилей B
источник

AP

Alexander Ponomarev in Svelte [svelt]
маунт стилей модуля это последняя операция инициализации модуля
источник

ON

Oleg N in Svelte [svelt]
а ещё может быть рекурсия, где A -> B, B -> A, в итоге что первое будет исподзовано то первое и добавит стили
источник

AP

Alexander Ponomarev in Svelte [svelt]
буквально
// A
import C from 'c'
import 'a.styles.ccs'

// C
import 'c.styles.css'


и будут сначало замаунчены стили C, затем стили A потому что они импортятся после полной инициализации C
источник

ON

Oleg N in Svelte [svelt]
Alexander Ponomarev
маунт стилей модуля это последняя операция инициализации модуля
все равно порядок меняется
источник

AP

Alexander Ponomarev in Svelte [svelt]
Oleg N
все равно порядок меняется
он не меняется у того что может друг друга перекрыть
источник

AP

Alexander Ponomarev in Svelte [svelt]
либо у тебя есть контроль чтобы это исправить
источник

AP

Alexander Ponomarev in Svelte [svelt]
переставив A и B местами
источник

AP

Alexander Ponomarev in Svelte [svelt]
давай пример с разметкой просто разберем
источник

AP

Alexander Ponomarev in Svelte [svelt]
будет понятно что проблемы нет
источник

AP

Alexander Ponomarev in Svelte [svelt]
смысл в том что граф зависимостей определен на этапе сборки, и порядок стилей определен на этапе сборки он не может дать сюрприз в рантайме
источник

AP

Alexander Ponomarev in Svelte [svelt]
он даст сюрприз если ты накосячил с порядком импортов и это правится гораздо проще чем сюрприз с маунтом по инстанцированию компонента
источник

ON

Oleg N in Svelte [svelt]
Alexander Ponomarev
он не меняется у того что может друг друга перекрыть
пример выше прокатывает, но должен сломаться на рекурсии
источник

ON

Oleg N in Svelte [svelt]
хотя хз
источник

AP

Alexander Ponomarev in Svelte [svelt]
Oleg N
а ещё может быть рекурсия, где A -> B, B -> A, в итоге что первое будет исподзовано то первое и добавит стили
не что первое будет использовано, а конкретный порядок. У тебя же А первым импортом идет внутри него B к моменту импорта B -> A они уже оба инициализрованы, если это было возможно сделать
источник

ON

Oleg N in Svelte [svelt]
да, ты же расширяешь приложение значит импорты будут туда сюда шевелиться
источник

ON

Oleg N in Svelte [svelt]
Alexander Ponomarev
не что первое будет использовано, а конкретный порядок. У тебя же А первым импортом идет внутри него B к моменту импорта B -> A они уже оба инициализрованы, если это было возможно сделать
потом я где-то выше добавил компонент в котором импорты по другому
источник

AP

Alexander Ponomarev in Svelte [svelt]
Oleg N
да, ты же расширяешь приложение значит импорты будут туда сюда шевелиться
но у тебя контроль жестче, да ты тоже можешь накосячить, но это можно исправить. А в случае если у тебя айтемы будут рендерится из асинхронных данных то ты порядок маунта никогда не предскажешь
источник

AP

Alexander Ponomarev in Svelte [svelt]
есть простой набор правил чтобы не косячить
источник

ON

Oleg N in Svelte [svelt]
а свелт как собрку делает?
источник