react组件中如何实现父传子一次性传递多个值(包括父组件方法)?

将所有要传递的数据或者方法放到一个params对象中,如下:

import moment from 'moment';
let [hxMap, setHxMap]: any = useState();
let [selectedLand, setSelectedLand] = useState<any>();
const [selectedDevice, setSelectedDevice] = useState<any>();
const [coor, setCoor] = useState<number[]>();
const [timestamp,setTimeStamp]=useState<any>();

setTimeStamp(moment().valueOf());
//要传递的方法
const setSelectedFeature = (fea: any,devNoClear:boolean) => {
    
    
      //方法体
}

<Spin style={
    
    {
    
     height: '100vh' }} tip="正在加载地图..." spinning={
    
    loading}>
      <div id="farm-map" className="farm-map">
        <TopBar params={
    
    {
    
    
          map:hxMap,
          //方法
          onSelectedLand:setSelectedFeature
        }}></TopBar>
        <LayerTool map={
    
    hxMap}></LayerTool>
        <Copyright></Copyright>
        <RestoreTool map={
    
    hxMap}></RestoreTool>
        <Fieldoverlay params={
    
    {
    
    
          map: hxMap,
          feature: selectedLand,
          timestamp:timestamp
        }} />
        <AgriculturalInfo params={
    
    {
    
    
          map: hxMap,
          feature: selectedDevice,
          coor: coor,
          timestamp:timestamp
        }}></AgriculturalInfo>
      </div>
    </Spin>

猜你喜欢

转载自blog.csdn.net/qq_37967853/article/details/128639557