我正在使用chartist.js,而我正在使用reactjs组件中的chartist。 我指的是http://gionkunz.github.io/chartist-js/examples.html#simple-pie-chart
chartist.js:
var Chartist = {
version:'0.9.5'
}
(function (window, document, Chartist) {
var options = {
labelInterpolationFnc: function(value) {
return value[0]
}
};
var responsiveOptions = [
['screen and (min-width: 640px)', {
chartPadding: 30,
labelOffset: 100,
labelDirection: 'explode',
labelInterpolationFnc: function(value) {
return value;
}
}],
['screen and (min-width: 1024px)', {
labelOffset: 80,
chartPadding: 20
}]
];
})();
Reactjs组件:
import React, { Component } from 'react';
var data = {
labels: ['Bananas', 'Apples', 'Grapes'],
series: [20, 15, 40]
};
showPieChart(data){
new Chartist.Pie('.ct-chart', data, options, responsiveOptions);
}
class Chart extends Component {
render(){
return(
<div>
<div className="center">
{showPieChart}
</div>
</div>
)}
}
export default Chart;
网页上没有显示任何内容。如何在react组件中访问vanilla javascript。
答案 0 :(得分:2)
你的问题有点误导,可以用两种方式解释。
<强>#1。如果您正在询问如何将Chartist库与React 集成,请按以下步骤操作:
有一个包装库,已经为我们做了:https://www.npmjs.com/package/react-chartist
您可以按照以下方式使用它(例如从他们的回购中获取):
import React from 'react';
import ReactDOM from 'react-dom';
import ChartistGraph from 'react-chartist';
class Pie extends React.Component {
render() {
var data = {
labels: ['W1', 'W2', 'W3', 'W4', 'W5', 'W6', 'W7', 'W8', 'W9', 'W10'],
series: [
[1, 2, 4, 8, 6, -2, -1, -4, -6, -2]
]
};
var options = {
high: 10,
low: -10,
axisX: {
labelInterpolationFnc: function(value, index) {
return index % 2 === 0 ? value : null;
}
}
};
var type = 'Bar'
return (
<div>
<ChartistGraph data={data} options={options} type={type} />
</div>
)
}
}
ReactDOM.render(<Pie />, document.body)
<强>#2。如果您一般都在询问如何将其他库集成到React 中,那么我建议您查看官方的React文档,因为有一个关于该主题的非常好的教程 - Integrating with Other Libraries
因此,如果您不想使用包装器库(react-chartist),那么您也可以检查其主要组件。这是一个很好的起点(遵循React建议),以了解如何创建自己的包装器:https://github.com/fraserxu/react-chartist/blob/master/index.js