You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/v2/guide/components.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1002,7 +1002,7 @@ Vue.component('async-example', function (resolve, reject) {
1002
1002
})
1003
1003
```
1004
1004
1005
-
Функция-фабрика принимает параметр `resolve` — коллбэк, который вызывается после того, как определение компонента получено от сервера. Кроме того, можно вызвать `reject(reason)`, если загрузка по какой-либо причине не удалась. Мы используем `setTimeout` исключительно в демонстрационных целях; как именно получать компонент в реальной ситуации — решать только вам самим. Один из удачных подходов — это использовать асинхронные компоненты в связке с [функциями Webpack по разделению кода](http://webpack.github.io/docs/code-splitting.html):
1005
+
Функция-фабрика принимает параметр `resolve` — коллбэк, который вызывается после того, как определение компонента получено от сервера. Кроме того, можно вызвать `reject(reason)`, если загрузка по какой-либо причине не удалась. Мы используем `setTimeout` исключительно в демонстрационных целях; как именно получать компонент в реальной ситуации — решать только вам самим. Один из удачных подходов — это использовать асинхронные компоненты в связке с [функциями Webpack по разделению кода](https://webpack.js.org/guides/code-splitting-require/):
1006
1006
1007
1007
```js
1008
1008
Vue.component('async-webpack-example', function (resolve) {
Copy file name to clipboardExpand all lines: src/v2/guide/deployment.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,7 @@ order: 20
18
18
19
19
#### Webpack
20
20
21
-
Используйте плагин Webpack [DefinePlugin](http://webpack.github.io/docs/list-of-plugins.html#defineplugin) для установки переменных окружения. Это позволит UglifyJS на этапе сборки удалить все предупреждения. Пример конфигурации:
21
+
Используйте плагин Webpack [DefinePlugin](https://webpack.js.org/plugins/define-plugin/) для установки переменных окружения. Это позволит UglifyJS на этапе сборки удалить все предупреждения. Пример конфигурации:
Copy file name to clipboardExpand all lines: src/v2/guide/installation.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -37,7 +37,7 @@ Vue также доступен на [jsdelivr](//cdn.jsdelivr.net/vue/{{vue_ver
37
37
38
38
## NPM
39
39
40
-
Рекомендуем использовать NPM при создании крупных приложений на Vue. Этот вариант прекрасно работает в паре с инструментами сборки, такими как [Webpack](http://webpack.github.io/) и [Browserify](http://browserify.org/). Во Vue также есть совместимые с ними инструменты для использования [однофайловых компонентов](single-file-components.html).
40
+
Рекомендуем использовать NPM при создании крупных приложений на Vue. Этот вариант прекрасно работает в паре с инструментами сборки, такими как [Webpack](https://webpack.js.org/) и [Browserify](http://browserify.org/). Во Vue также есть совместимые с ними инструменты для использования [однофайловых компонентов](single-file-components.html).
Как и обещалось, мы также можем использовать препроцессоры, такие как Pug, Babel (с модулями ES2015) и Stylus для создания более ясных и функциональных компонентов.
Перечисленные языки даны только для примера. С тем же успехом можно использовать Buble, TypeScript, SCSS, PostCSS — или любые другие пре- или постпроцессоры по вкусу.
34
+
Перечисленные языки даны только для примера. С тем же успехом можно использовать Buble, TypeScript, SCSS, PostCSS — или любые другие пре- или постпроцессоры по вкусу. При использовании Webpack вместе с `vue-loader`, вы также получаете прекрасную поддержку CSS-модулей.
35
35
36
-
<!-- TODO: include CSS modules once it's supported in vue-loader 9.x -->
36
+
### Что насчёт разделения ответственности?
37
+
38
+
Одна важная вещь, что следует отметить — **разделение ответственности это не тоже самое что разделение на файлы по типу.** В современной разработке UI мы обнаружили, что вместо разделения кодовой базы на три огромных слоя, что тесно переплетаются друг с другом, имеет больше смысла делить их на слабо связанные компоненты и компоновать уже их. Внутри компонента, его шаблон, логика и стили неразрывно связаны между собой, что позволяет сделать компонент более сплочённым и удобным в поддержке.
39
+
40
+
Если вам не нравится идея однофайловых компонентов, вы также можете пользоваться возможностями горячей заменой модулей и пре-компиляцией выделив JavaScript и CSS в отдельные файлы:
41
+
42
+
```html
43
+
<!-- my-component.vue -->
44
+
<template>
45
+
<div>Это будет предварительно скомпилировано</div>
46
+
</template>
47
+
<scriptsrc="./my-component.js"></script>
48
+
<stylesrc="./my-component.css"></style>
49
+
```
37
50
38
51
## Начало работы
39
52
@@ -47,7 +60,7 @@ order: 19
47
60
48
61
После того как вы уделили время этим ресурсам, мы советуем вам посмотреть на шаблон [webpack-simple](https://github.com/vuejs-templates/webpack-simple). Следуйте инструкциям, и очень скоро у вас будет рабочий проект с `.vue`-компонентами, ES2015 и hot-reloading.
49
62
50
-
Этот шаблон использует [Webpack](https://webpack.github.io/) — сборщик, соединяющий набор "модулей" в результирующее приложение. [Это видео](https://www.youtube.com/watch?v=WQue1AN93YU) представляет собой неплохое введение. Разобравшись с основами, вы возможно также захотите посмотреть [этот курс по продвинутому использованию Webpack на Egghead.io](https://egghead.io/courses/using-webpack-for-production-javascript-applications).
63
+
Этот шаблон использует [Webpack](https://webpack.js.org/) — сборщик, соединяющий набор "модулей" в результирующее приложение. [Это видео](https://www.youtube.com/watch?v=WQue1AN93YU) представляет собой неплохое введение. Разобравшись с основами, вы возможно также захотите посмотреть [этот курс по продвинутому использованию Webpack на Egghead.io](https://egghead.io/courses/using-webpack-for-production-javascript-applications).
51
64
52
65
В Webpack каждый модуль может быть подвергнут трансформации загрузчиком ("loader") перед включением в сборку. Vue предоставляет плагин [vue-loader](https://github.com/vuejs/vue-loader) для трансляции однофайловых `.vue`-компонентов. Шаблон [webpack-simple](https://github.com/vuejs-templates/webpack-simple) содержит уже настроенный проект, но если вы хотели бы узнать больше о том, как работают `.vue`-компоненты в связке с Webpack, можно почитать [документацию vue-loader](https://vue-loader.vuejs.org).
Copy file name to clipboardExpand all lines: src/v2/guide/ssr.md
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,7 @@ Google и Bing прекрасно индексируют синхронные Ja
18
18
19
19
Пользователи могут приходить на ваш сайт из отдалённых районов с медленным соединением — или же просто через медленный мобильный интернет. В таких случаях лучше минимизировать количество и объём запросов, требующихся для отображения основного контента.
20
20
21
-
Во избежания загрузки целого приложения можно использовать [инструменты Webpack для разделения кода](https://webpack.github.io/docs/code-splitting.html), но даже этот подход не будет столь же эффективен, как скачивание уже готового отрендеренного на сервере файла.
21
+
Во избежания загрузки целого приложения можно использовать [инструменты Webpack для разделения кода](https://webpack.js.org/guides/code-splitting-require/), но даже этот подход не будет столь же эффективен, как скачивание уже готового отрендеренного на сервере файла.
22
22
23
23
### Клиенты с устаревшим JavaScript (или вовсе без такового)
0 commit comments