LINUX.ORG.RU

vue.js: хочу глобальные переменные, переводы и макросы. Как правильно?

 ,


1

5

Изучаю vue.js и пытаюсь понять, как на него правильно перетащить текущий код. То что компоненты надо делать изолированными - это понятно. То что стейт фигарить через глобальный стор - тоже.

Но помимо этого хочется еще несколько вещей. Возможно, хочется неправильно и зря, тогда поправьте как надо:

1. Как вообще принято переводы делать? Сейчас у меня весь яваскрипт фигарится в общий бандл, и делаются отдельный бандлы для каждого языка. Типа, клиент один раз грузит нужный язык и на ходу переключать не надо.

2. Вроде как логично переводы внутри компонентов держать, но внутри .vue ничего для подобного не предусмотрено (расширить-то можно, но не хочется лисапедить).

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

4. Иногда хочется внешние константы в шаблон заэмбедить. Например, в конфиге приложения я задаю размеры превьюшек. А потом их надо явно указать в стилях. Или, например, в темплейте мне нужно испортнуть структуру со статусами, типа { visible: 1, closed: 2, deleted: 3 }. Лучше бы такое сразу заэмбедить и не дергать хелперы при рендеринге. У меня в кастомном лисапеде под это есть макросы с отслеживанием зависимостей, но не уверен что такое в vue прокатит.

5. При использовании всяких vueify и vue-loader, можно ли сделать так, чтобы stylus понимал npm-пути в @import? То же самое касается jade и т.п.

6. Вопрос больше про vueify и vue-loader. У меня есть несколько приложений, хочется «смержить» их файловую систему. Чтобы когда указывают относительные пути, компонент на этапе бандлинга искался по всем приложениям, а не только по текущему. Это бывает удобно если хочется организовать виджеты в дерево, вместо одной плоской кучи-малы.

★★★★★

То что стейт фигарить через глобальный стор - тоже.

Ты в курсе, что глобальное состояние - антипаттерн?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.