2017-05-26 72 views
1

我正在嘗試將javascript量表腳本(http://bernii.github.io/gauge.js/dist/gauge.min.js)導入到要使用的組件中。將Gauge.js導入反應組件

我將腳本從(http://bernii.github.io/gauge.js/dist/gauge.min.js)複製到我的組件文件夾中重命名爲(Gauge.js)並需要它。

var Gauge = require('./Gauge'); 

然後我嘗試使用它的構造像這樣創建計腳本,這是在componentDidMount使用()。

var target = this.refs.test; var gauge = new Gauge(target);

我的渲​​染

render() { return( <div className="GaugeTest"> <canvas width={this.props.width} height={this.props.height} ref="test" /> </div> ); }

我得到的錯誤:

Overview.js:34遺漏的類型錯誤:軌距不是構造這是指線路它有這個代碼:

var gauge = new Gauge(target); 

有關如何包含/需要此腳本的任何想法,以便我可以在我的組件中使用它?

+0

你有沒有想出解決辦法? –

+0

具體而言,我使用了react-gaugejs,您也可以使用cdn或本地文件將它正常包含在HTML文件中。其他選項是使用webpack和別名來導入這些腳本。有關該網站的更多信息。 –

+0

結束瞭解​​決它。我安慰Gauge,發現它正在以Gauge(和其他人)作爲對象本身返回,作爲一個關鍵。所以我只是'var gauge = new Gauge.Gauge(target);'而且它工作。 –

回答

1

它是以Gauge(和其他選項)作爲關鍵字導入爲對象的。因此,而不是做:

var Gauge = Gauge.Gauge(target); 

如果你想知道爲什麼只是console.log(Gauge)

+0

我試圖將庫轉換爲類並失敗。 你的迴應拯救了我的一天:) – Loves2Develop