From 6d1937068799ca5a85dfafa6f83471bdd7144aa7 Mon Sep 17 00:00:00 2001 From: Daniel Gurev Date: Fri, 4 Aug 2017 02:31:02 +0300 Subject: [PATCH] Add Russian documentation --- docs/assets/scatter.png | Bin 0 -> 43646 bytes docs/ru/README.md | 290 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 290 insertions(+) create mode 100644 docs/assets/scatter.png create mode 100644 docs/ru/README.md diff --git a/docs/assets/scatter.png b/docs/assets/scatter.png new file mode 100644 index 0000000000000000000000000000000000000000..6a357053b5f1c5170e1e55601c4adb373548d6c3 GIT binary patch literal 43646 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

8wqA>vuBvymZL;aFnp?VoReEX%_->^kmLm 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 + vue-chartjs logo + + +[![npm version](https://badge.fury.io/js/vue-chartjs.svg)](https://badge.fury.io/js/vue-chartjs) +[![codecov](https://codecov.io/gh/apertureless/vue-chartjs/branch/master/graph/badge.svg)](https://codecov.io/gh/apertureless/vue-chartjs) +[![Build Status](https://travis-ci.org/apertureless/vue-chartjs.svg?branch=master)](https://travis-ci.org/apertureless/vue-chartjs) +[![Package Quality](http://npm.packagequality.com/shield/vue-chartjs.svg)](http://packagequality.com/#?package=vue-chartjs) +[![npm](https://img.shields.io/npm/dm/vue-chartjs.svg)](https://www.npmjs.com/package/vue-chartjs) +[![Gitter chat](https://img.shields.io/gitter/room/TechnologyAdvice/Stardust.svg)](https://gitter.im/vue-chartjs/Lobby) +[![license](https://img.shields.io/github/license/mashape/apistatus.svg)](https://github.com/apertureless/vue-chartjs/blob/master/LICENSE.txt) +[![CDNJS version](https://img.shields.io/cdnjs/v/vue-chartjs.svg)](https://cdnjs.com/libraries/vue-chartjs) + +# vue-chartjs + +**vue-chartjs** обертка для [Chart.js](https://github.com/chartjs/Chart.js) в vue. Вы можете с легкостью создавать многоразовые компоненты диаграмм. + +## Демо & Документация + +- 📺 [Demo](http://demo.vue-chartjs.org/) +- 📖 [Docs](http://www.vue-chartjs.org/) + +### Совместимость + +- v1 later `@legacy` + - Vue.js 1.x +- v2 later + - Vue.js 2.x + +После филнального выпуска vue.js 2, вы получите v2 по умолчанию, если установите vue-chartjs через npm. +Больше нет необходимости в @next теге. Если вы нуждаетесь в v1, вам необходимо указать версию или использовать legacy тег. +Если вы ищите v1, проверьте эту [ветку](https://github.com/apertureless/vue-chartjs/tree/release/1.x). + +## Установка + +Просто выполните `yarn add vue-chartjs chart.js` + +В случаи если вы хотите использовать библиотеку прямо в браузере, добавьте + +```html + +``` +в ваши скрипты. Смотрите [Codepen](https://codepen.io/apertureless/pen/vxWbqB?editors=1010) + +## Описание различий сборок + +Существует три различные точки входа. Это зависит от того, какая сборка стоит у вас. Зависимости собираются или подключаются как peerDependency. + +- Browser +- Browserify / Webpack 1 +- Webpack 2 + + +| Build | Chart.js | Vue.js | +|---|---|---| +| vue-chartjs.full.js | Bundled | Bundled | +| vue-chartjs.full.min.js | Bundled | Bundled | +| vue-chartjs.js | peerDependency | peerDependency | +| vue-chartjs.min.js | peerDependency | peerDependency | +| es/index* | peerDependency | peerDependency | + +### Браузер +Вы можете использовать `vue-chartjs` прямо в браузере без установки каких-либо сборок. Пример на [codepen](https://codepen.io/apertureless/pen/vxWbqB?editors=1010). В этом случаи, пожалуйста, используйте `vue-chartjs.full.min.js`. Это минифицированноая версиея библиотеки, содержащая Vue.js и Chart.js в себе, с возможностью подключения при помощи UMD Module. Таким образом, вам необходим лишь один файл. + + +### Browserify / Webpack 1 + +Если вы используете Gulp, Browserify или Webpack 1, входная точка находится в `vue-chartjs.js`. Она __транслируется__ и __собирается__ при помощи UMD Module. + +Однако Vue.js и Chart.js является `peerDependencies`, поэтому вы можете устанавливать их отдельно. В большинстве проектов вы в любом случаи будете иметь установленный `Vue.js`. В этом случаи, вы можете иметь различные версии Vue.js и Chart.js. + +### Webpack 2 +Если вы используете Webpack 2, он будет автоматически использовать `jsnext:main` / `module` в качестве входной точки, которая расположена в `es/index.js`. +Это транслированная es версия кода, которая не __собирается__ в модуль. Таким образом, three shaking будет работать. +Как и в собранной версии, `Vue.js` и `Chart.js` являются `peerDependencies` и не нуждаются в установке. + + +## Как использовать + +Вам необходимо импортировать базовый класс диаграммы и унаследовать его. Это даст гораздо большую гибкость при работе с различными данными. Вы можете передать данные через props или vue-resource. + +Вы можете импортировать весь проект или каждый модуль по отдельности. + +```javascript +import VueCharts from 'vue-chartjs' +import { Bar, Line } from 'vue-chartjs' +``` + +Просто создайте ваш собственный компонент. + +```javascript +// CommitChart.js +import { Bar } from 'vue-chartjs' + +export default Bar.extend({ + mounted () { + // Переопределение базового рендер метода с реальными данными. + this.renderChart({ + labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + datasets: [ + { + label: 'GitHub Commits', + backgroundColor: '#f87979', + data: [40, 20, 12, 39, 10, 40, 39, 80, 40, 20, 12, 11] + } + ] + }) + } +}) +``` + +Затем просто импортируйте и используйте ваши собственные расширенные компоненты как обычные vue компоненты. + +```javascript +import CommitChart from 'path/to/component/CommitChart' +``` + +## Другой пример с options + +Вы можете переопределить стандартные опции графика. Просто передайте объект с опциями в качестве второго параметра в рендер метод. + +```javascript +// MonthlyIncome.js +import { Line } from 'vue-chartjs' + +export default Line.extend({ + props: ['data', 'options'], + mounted () { + this.renderChart(this.data, this.options) + } +}) +``` + +Используйте это в вашем vue приложении + +```javascript +import MonthlyIncome from 'path/to/component/MonthlyIncome' + + + + +``` + +## Реактивность + +Chart.js не обновляет и не перерисовывает диаграмму при передаче новых данных. +Впрочем, вы можете реализовать это самостоятельно или использовав один из двух подключенных миксинов: + +- `reactiveProp` +- `reactiveData` + +Оба включены в `mixins` модуль. + +Миксины автоматически создают `chartData` в виде prop или data. И добавляют watcher. Если данные были измененны, график обновится. +Но помните про ограничение vue и javascript на изменений массивов и объектов. Больше информации можно получить [здесь](http://vue-chartjs.org/#/home?id=reactive-data) + +```javascript +// MonthlyIncome.js +import { Line, mixins } from 'vue-chartjs' + +export default Line.extend({ + mixins: [mixins.reactiveProp], + props: ['chartData', 'options'], + mounted () { + this.renderChart(this.chartData, this.options) + } +}) + +``` + +### Mixins модуль +Модуль `mixins` включен в `VueCharts`, а также доступен в виде отдельного модуля. +Несколько способов импортировать их: + +```javascript +// Load complete module with all charts +import VueCharts from 'vue-chartjs' + +export default VueCharts.Line.extend({ + mixins: [VueCharts.mixins.reactiveProp], + props: ['chartData', 'options'], + mounted () { + this.renderChart(this.chartData, this.options) + } +}) +``` + +```javascript +// Load speperate modules +import { Line, mixins } from 'vue-chartjs' + +export default Line.extend({ + mixins: [mixins.reactiveProp], + props: ['chartData', 'options'], + mounted () { + this.renderChart(this.chartData, this.options) + } +}) +``` + +```javascript +// Load speperate modules with destructure assign +import { Line, mixins } from 'vue-chartjs' +const { reactiveProp } = mixins + +export default Line.extend({ + mixins: [reactiveProp], + props: ['chartData', 'options'], + mounted () { + this.renderChart(this.chartData, this.options) + } +}) +``` + +## Доступные диаграммы + +### Bar Chart + +![Bar](../assets/bar.png) + +### Line Chart + +![Line](../assets/line.png) + +### Doughnut + +![Doughnut](../assets/doughnut.png) + +### Pie + +![Pie](../assets/pie.png) + +### Radar + +![Pie](../assets/radar.png) + +### Polar Area + +![Pie](../assets/polar.png) + +### Bubble + +![Bubble](../assets/bubble.png) + +### Scatter + +![Scatter](../assets/scatter.png) + +## Настройка сборки + +``` bash +# инициализация зависимостей +npm install + +# сборка с горячей заменой на localhost:8080 +npm run dev + +# сборка для production с минификацией +npm run build + +# запуск unit тестов +npm run unit + +# запуск e2e тестов +npm run e2e + +# запуск всех тестов +npm test +``` + +Для детальных объяснений того, как это работает, перейдите в [руководство](http://vuejs-templates.github.io/webpack/) и [документацию для vue-loader](http://vuejs.github.io/vue-loader). + +## Contributing + +1. Fork it ( https://github.com/apertureless/vue-chartjs/fork ) +2. Create your feature branch (`git checkout -b my-new-feature`) +3. Commit your changes (`git commit -am 'Add some feature'`) +4. Push to the branch (`git push origin my-new-feature`) +5. Create a new Pull Request + +## License + +This software is distributed under [MIT license](LICENSE.txt).