2017-03-17 72 views
0

我試圖在React生態系統中使用第三方腳本(mapbox)。在傳統的JavaScript我導入的腳本在當時的初始化它像這樣:將第三方腳本導入React

<script src='https://api.mapbox.com/mapbox.js/v3.0.1/mapbox.js'></script> 

L.mapbox.accessToken = 'pk.xxxtoken'; 
var map = L.mapbox.map('map', 'mapbox.streets').setView([40, -74.50], 9); 

我想離開我的應用程序做出反應的頭,然後在componentDidMount()我嘗試初始化它,但它不知道什麼是「L 「是:

'L' is not defined  

所以我需要在腳本導入到以某種方式組成,所以我不得不來看看‘反應 - 異步腳本’,但我不確定......

+0

你使用'gulp'或'webpack'或? – Nicholas

+0

是的webpack,我可以把它導入腳本嗎?但是,這隻會將腳本應用於窗口,我可以將它分配給特定的var? – CerIs

+0

是的,你可以通過webpack加載一個腳本,只要Aron在下面說過,你可以通過導入將它分配給一個var – Nicholas

回答

2

它看起來像mapbox有一個npm包,所以你可以安裝它與npm install --save mapbox,然後在你的使用它通過導入它來反應組件

import * as L from 'mapbox'; 

// do stuff with L here