Неперехваченная ошибка типа: не удается прочитать свойство ‘on’ неопределенного в raphael.js

#raphael

#рафаэль

Вопрос:

В приведенном ниже коде использовался justgage node_module. При импорте raphael.js за то же самое, получая сообщение об ошибке Uncaught TypeError: Cannot read property 'on' of undefined . Когда я проверил метод, выдающий проблему в файле, было обнаружено, что метод уже определен в коде. Проблема с выдачей кода находится eve.on("raphael.remove", stopAnimation); в строке 5216 raphael.js но этот метод уже был определен в строке 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>);
            }
});
  

Ответ №1:

Попробуйте использовать https://www.npmjs.com/package/webpack-raphael посылка.

ps. если у вас нет jQuery, доступного глобально, вы можете передать его с помощью модуля imports-loader:

 import 'imports-loader?jQuery=jquery,this=>window!webpack-raphael/raphael';