在以下代码中使用justgage
node_module。在导入raphael.js时,获取错误Uncaught TypeError: Cannot read property 'on' of undefined
。当我检查文件中给出问题的方法时,发现该方法已在代码中定义。
代码提供问题是eve.on("raphael.remove", stopAnimation);
在raphael.js的5216
行,但此方法已在185
行eve.on = function (name, f){}
上定义。谁能说出问题是什么?
代码 -
import React from 'react';
import 'justgage';
import 'raphael';
var timeOut=null,gauge=null;
export default React.createClass({
componentDidMount(){
this.update();
},
update(){
gauge=new JustGage({ id: "gauge", value: 67, min: 0, max: 100, title: "Visitors"});
document.getElementById("gage").innerHTML = gauge;
timeOut=setTimeout(this.update, 600);
},
getValue(){
var val = 25*Math.random();
if(val>100) { val=100-val;}
if(val<0) { val=val+10;}
return val;
},
componentWillUnmount: function() {
clearTimeout(timeOut);
},
render(){
return(<div className="coll-md-4">
<div id="gage"></div>
</div>);
}
});
答案 0 :(得分:1)
尝试使用https://www.npmjs.com/package/webpack-raphael包。
PS。如果您还没有全局可用的jQuery,您可以使用imports-loader模块传递:
import 'imports-loader?jQuery=jquery,this=>window!webpack-raphael/raphael';