С быстрым развитием React мы все больше и больше принимаем его стиль написания и идеи.В наше время небольшие программы в самом разгаре, и обычный режим компиляции уже не подходит для нужд разработчиков. Люди постоянно ищут языковой фреймворк, который React может компилировать в небольшие программы, так родился Taro. Сильнейший руководитель во вселенной. Он поддерживает использование методов разработки React для написания приложений, которые могут работать на нескольких платформах, таких как мини-программы WeChat, Web, React Native и т. д. одновременно. После непрерывного итеративного улучшения Таро возродился из пепла.
Введение в TaroEcharts
Этот проект представляет собой набор структур диаграмм, основанных на инкапсуляции ec-canvas и подходящих для версии Taro, обобщенной в фактической разработке. Разработчики могут быстро создавать диаграммы с помощью простой настройки и синтаксиса React для удовлетворения различных потребностей в визуализации.
Адрес GitHub:GitHub.com/w SMD-компоненты/плохие-плохие…
Предварительный просмотр мини-программы WeChat:
Процесс реализации
1 загрузка
Чтобы быть совместимым с апплетом Canvas, мы сначала собираем ec-canvas и загружаем его локально. Среди них ec-canvas — это компонент, предоставленный официальным сайтом echarts, который мы можем скачать или перейти наИндивидуальная сборка официального сайтаВыберите диаграмму или плагин, который необходимо загрузить.
2 импортных компонента
Внедряем в проект нужную нам библиотеку компонентов, и выкладываем сюда единообразноsrc/components/ec-canvasпод папку. Каждый можетПапкаИмпортируйте его в свой проект. Среди них echarts.js — это подключаемый модуль диаграмм echarts, который мы только что скачали сами.Вы можете настроить и загрузить необходимые диаграммы в соответствии с фактическими требованиями проекта, а затем импортировать их.
3 Создайте диаграмму (в качестве примера возьмем круговую диаграмму)
3.1 Создание нового компонента диаграммы
существуетcomponentsсоздать папкуpieCharts.jsкомпоненты. Импортируем только что созданный компонент
import * as echarts from "./ec-canvas/echarts";
3.2 Ленивая загрузка графика рендеринга
Настройте наш ec-canvas
config = {
usingComponents: {
"ec-canvas": "./ec-canvas/ec-canvas"
}
};
Используйте только что импортированный ec-canvas в функции рендеринга
<ec-canvas
ref={this.refChart}
canvas-id="mychart-area"
ec={this.state.ec}
/>
Создайте функцию обновления для инициализации диаграммы
refresh(data) {
this.Chart.init((canvas, width, height) => {
const chart = echarts.init(canvas, null, {
width: width,
height: height
});
setChartData(chart, data);
return chart;
});
}
refChart = node => (this.Chart = node);
Настройка графиков ленивой загрузки
state = {
ec: {
lazyLoad: true
}
};
3.3 Настраиваем параметры нужного нам графика
Здесь настройте его в setChartData и передайте графики, параметры данных.
function setChartData(chart, data) {
let option = {
series : [
{
name: '访问来源',
type: 'pie',
center: ['50%', '50%'],
radius: [0, '60%'],
data: data,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
chart.setOption(option);
}
На данный момент круговая диаграмма создана. Подробности см.Круговая диаграмма
4 Создайте граф
Импортируйте только что созданную диаграмму на страницу, для которой она нужна (Круговая диаграмма)
import PieChart from "../../components/PieChart";
Импорт в функцию рендеринга
<PieChart ref={this.refPieChart} />
Создать диаграмму и передать данные
componentDidMount() {
const chartData = [
{value:335, name:'直接访问'},
{value:310, name:'邮件营销'},
{value:234, name:'联盟广告'},
{value:135, name:'视频广告'},
{value:1548, name:'搜索引擎'}
];
this.pieChart.refresh(chartData);
}
refPieChart = (node) => this.pieChart = node
До сих пор была создана круговая диаграмма, круговая диаграмма и так далее аналогичны. Пока вы устанавливаете параметры таким образом, мы можем создать нужную вам диаграмму.
5 Создание других карт
Перелистываемые графики:
Несколько диаграмм на одной странице:
Несколько диаграмм объединены:
Суммировать
От неизвестного до нарицательного имени, Таро теперь нравится и разработчикам. В будущем он должен стать еще более популярным на гастролях, ведь он самый сильный руководитель во вселенной. Однако хороший фреймворк также нуждается в помощи большинства инструментов. Как будто рядом с АЦП всегда есть опора. В настоящее время нет единой спецификации разработки карт в Таро, в настоящее время это только метод, используемый нашей командой. Также вытягивается отдельный пакет для карт Таро. Мы приглашаем единомышленников поднимать вопросы и присоединяться к нам.