light-chart
Version:
Charts for mobile visualization.
56 lines (49 loc) • 1.8 kB
JavaScript
import F2 from "./index"
let G2Chart=F2.Chart;
F2.Chart=function(config){
if(config.ltCanvas){
const context =require("./canvas/index").getContext(config.ltCanvas.$refs.canvas);
config.ltCanvas.$refs.canvas.getContext = function () {
return context;
};
if(process.env.RUNTIME !== "web"){
config.el = new F2.Renderer(context);
let pixBase = 1;
if(process.env.RUNTIME === "miniapp"){
pixBase = __base__.config.env.deviceWidth/10*__base__.config.env.dpr;
}
Object.defineProperties(config.ltCanvas.$refs.canvas, {
'currentStyle': {
get: function () {
return Object.assign({}, config.ltCanvas.$refs.canvasWrap.classStyle, config.ltCanvas.$refs.canvasWrap.style);
}
},
'offsetWidth': {
get: function () {
let width = config.ltCanvas.$refs.canvasWrap.style['width'] || config.ltCanvas.$refs.canvasWrap.classStyle['width'];
if(/rem$/ig.test(width)){
width = parseFloat(width) * pixBase;
}
return parseFloat(width);
}
},
'offsetHeight': {
get: function () {
let height = config.ltCanvas.$refs.canvasWrap.style['height'] || config.ltCanvas.$refs.canvasWrap.classStyle['height'];
if(/rem$/ig.test(height)){
height = parseFloat(height) * pixBase;
}
return parseFloat(height)
}
}
});
}else{
config.el = config.ltCanvas.$refs.canvas;
}
config.width = +config.ltCanvas.$refs.canvas.offsetWidth;
config.height = +config.ltCanvas.$refs.canvas.offsetHeight;
}
return new G2Chart(config);
};
// module.exports = F2;
export default F2;