React Native 集成 ArcGIS 地圖的詳細(xì)過程
ArcGIS官方提供了 JavaScript SDK,也提供了 ArcGIS-Runtime-SDK-iOS,但是并沒有提供 React Native的版本,所以這里使用了 react-native-arcgis-mapview 庫,這個庫比較老,支持的 ArcGIS-Runtime-SDK-iOS 版本是100.4,但是在使用的時候發(fā)現(xiàn),在使用pod install安裝的時候總是會下載失敗,所以后面手動將 ArcGIS-Runtime-SDK-iOS 的版本改為 100.14.1。
創(chuàng)建工程
初始化工程(需要科學(xué)上網(wǎng))
npx react-native init MyReactNativeApp
安裝依賴
cd MyReactNativeApp/ios pod install
安裝react-native-arcgis-mapview
使用 npm 安裝 react-native-arcgis-mapview 庫
cd MyReactNativeApp npm install react-native-arcgis-mapview
修改 ios/Podfile 文件,在最后添加
pod 'RNArcGISMapView', :path => "../node_modules/react-native-arcgis-mapview/ios"
編輯 node_modules/react-native-arcgis-mapview/ios/RNArcGISMapView.podspec,修改 dependency 版本為 100.14.1。
s.dependency 'ArcGIS-Runtime-SDK-iOS', '100.4' => s.dependency 'ArcGIS-Runtime-SDK-iOS', '100.14.1'
使用 pod install 安裝 ArcGIS-Runtime-SDK-iOS
cd MyReactNativeApp/ios pod install
使用 react-native-arcgis-mapview
在 App.js 中使用 react-native-arcgis-mapview 庫,完整代碼如下
import React, {useRef, useState}from 'react'
import {View, Text, Button, StyleSheet } from 'react-native'
import ArcGISMapView, { setLicenseKey } from 'react-native-arcgis-mapview'
function App() {
const key = '<key>'
setLicenseKey(key)
const mapView = useRef(null)
const basemap = 'https://www.arcgis.com/home/item.html?id=6b6b9cea06964cb38d8a654964c347ab'
return (
<View style={styles.container}>
<ArcGISMapView
style={styles.map}
initialMapCenter={[{latitude: 32.788, longitude: -79.940, scale: 10000.0}]}
basemapUrl={basemap}
ref={mapView}
/>
<Button title="Test" onPress={() => {
console.log(mapView.current.props.basemapUrl)
}} />
</View>
);
}
var styles = StyleSheet.create({
container: {
flex: 1,
},
map: {
flex: 1,
},
})
export default App驗(yàn)證
運(yùn)行項(xiàng)目,驗(yàn)證是否成功。
npm start
到此這篇關(guān)于React Native 集成 ArcGIS 地圖的文章就介紹到這了,更多相關(guān)React Native ArcGIS 地圖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
從零開始最小實(shí)現(xiàn)react服務(wù)器渲染詳解
這篇文章主要介紹了從零開始最小實(shí)現(xiàn)react服務(wù)器渲染詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-01-01
解決React報錯Cannot?find?namespace?context
這篇文章主要為大家介紹了React報錯Cannot?find?namespace?context分析解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12
React+TypeScript+webpack4多入口配置詳解
這篇文章主要介紹了React+TypeScript+webpack4多入口配置詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
React-Native左右聯(lián)動List的示例代碼
本篇文章主要介紹了React-Native左右聯(lián)動List的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09
基于TypeScript 的React 項(xiàng)目創(chuàng)建
本文介紹了如何創(chuàng)建基于TypeScript的React項(xiàng)目,使用Create React App(CRA)工具可以快速搭建開發(fā)環(huán)境,通過--template typescript參數(shù)初始化TS項(xiàng)目,感興趣的可以了解一下2026-05-05
React中完整實(shí)例講解Recoil狀態(tài)管理庫的使用
這篇文章主要介紹了React中Recoil狀態(tài)管理庫的使用,Recoil的產(chǎn)生源于Facebook內(nèi)部一個可視化數(shù)據(jù)分析相關(guān)的應(yīng)用,在使用React的實(shí)現(xiàn)的過程中,因?yàn)楝F(xiàn)有狀態(tài)管理工具不能很好的滿足應(yīng)用的需求,因此催生出了Recoil,對Recoil感興趣可以參考下文2023-05-05
React從react-router路由上做登陸驗(yàn)證控制的方法
本篇文章主要介紹了React從react-router路由上做登陸驗(yàn)證控制的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-05-05

