
Research
Shai-Hulud Descends to Hades: Miasma Worm Campaign Spreads with New PyPI Wave
Socket found 37 malicious PyPI wheels that abuse Python startup hooks to launch a Bun-powered credential stealer tied to Mini Shai-Hulud/Miasma.
react-amap-next
Advanced tools
此项目是对高德地图的react封装,相比较于react-amap,集成更原生化,更简单. 用最react的方式使用高德地图AMap.
// 首先安装react-amap-next
yarn add react-amap-next
// 加载所需组件
import { loadMap } from 'react-amap-next/lib/api'; //加载高德地图方法,如果与redux配合,可以写在action/reducer中
import Map from 'react-amap-next/lib/Map';
import Marker from 'react-amap-next/lib/Marker';
// 在componentDidMount中加载js
componentDidMount() {
loadMap('<amap-key>').then(AMap=>{
// 可在此做一些初始化
this.setState({AMap});
})
}
// 在render中使用Map,注意其中参数refer类似react中ref,只支持函数,可以获得amap实例;options是参数,更新的参数也通过此处传下去,events是地图事件的回调,设置后将会被调用,可以触发属性的改变.
// 一般地图组件都包含AMap, refer, options, events4个属性.
// 注意, options和events中的函数和变量最好都为外面声明的,而不使用匿名的函数.否则容易触发事件的频繁移除及更新,耗费性能.
render() {
return (
<Map refer={} AMap={this.state.AMap} style={{width:1200, height:800}} options={{}} events={{}} >
<Marker
refer={(entity) => this.setState({carEntity: entity})}
options={{
position: [116.397428, 39.90923],
icon: "https://webapi.amap.com/images/car.png",
offset: this.state.carOffset,
autoRotation: true
}}
events={{
moving:this._carMoving
}}
/>
</Map>
)
}
例子请参考src/App.js,
git clone https://github.com/windsome/react-amap-next
yarn install # npm install
npm start
api.js为amap相关的操作,主要包含高德js的加载及各种组件的创建及更新方法.webservice.js为地图webservice服务,与UI无关的操作均使用webservice进行Map.js为根节点地图组件,其他所有子UI组件都必须作为其一级子元素.遵循react生命周期函数,主要使用componentDidMount, componentDidUpdate进行创建和更新的处理.Marker.js为标记点组件MassMarks为海量点组件,此组件是一个layer图层,因为比traffic, sattelite复杂,需要设置很多属性,所以独立成一个组件.其他图层也可以参考设置成独立组件Polygon.js为多边形控件,可以用来画行政区域图Polyline.js为多折点线组件,可以用来模拟汽车行驶轨迹InfoWindow.js为InfoWindow组件,可以用来显示弹出框LayerTraffic.js为LayerTraffic组件,可以用来显示交通层loadScript.js是用来加载js和css的,希望能确保加载文件的唯一性,可以参考requirejs的实现机制改掉.注意:这里已经用react-amap的加载方式替换了.react-amap的不同之处,加载高德地图js与Map,Marker等组件是分离的.MassMarks层)不显示,见此版本例子中的App.js,首先点击MarkerTest,然后再打开MassMarksTest,会发现海量点图层有时不显示.原因为:MassMarks层是属于Map的其中一个层,如果Map的layers属性后于海量点图层加载,则海量点图层会被layers属性替代. 建议以后将所有图层均做成组件,并且Map组件不再支持layers属性.We are always open to your feedback.
FAQs
这是高德地图的react版本,相比react-amap更加简单,更加贴合react用户
We found that react-amap-next demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
Socket found 37 malicious PyPI wheels that abuse Python startup hooks to launch a Bun-powered credential stealer tied to Mini Shai-Hulud/Miasma.

Security News
RubyGems and Bundler 4.0.13 introduced an opt-in cooldown feature that delays newly published gems during dependency resolution.

Security News
pnpm 11.5 now recognizes npm staged publish approvals in release metadata, preventing those releases from being mistaken for lower-trust package publishes.