#
luxiaotao1123
2024-03-15 f496d63b038c4f6ac9476ae8ff0d0ec679ce5473
zy-asrs-flow/src/pages/map/utils.js
@@ -316,7 +316,8 @@
    return options;
}
export const fetchMapData = async () => {
export const fetchMapData = async (intl) => {
    clearMapData();
    await Http.doPostPromise('api/map/list', {}, (res) => {
        const mapItemList = res.data.itemList;
        mapItemList.forEach(item => {
@@ -332,7 +333,6 @@
                    break;
            }
            if (sprite) {
                console.log(item);
                initSprite(sprite, item.type);
                // data
                sprite.data.uuid = item.uuid;
@@ -345,7 +345,7 @@
                mapContainer.addChild(sprite);
            }
        })
    }).catch((error) => {
        console.error(error);
    })
@@ -379,9 +379,30 @@
    const closeLoading = message.loading({ content: intl.formatMessage({ id: 'common.loading.api.message', defaultMessage: '等待服务器......' }), duration: API_TIMEOUT });
    await Http.doPostPromise('api/map/save', { itemList: mapItemList }, (res) => {
        closeLoading();
        console.log(res);
    }).catch((error) => {
        closeLoading();
        console.error(error);
    })
}
export const clearMapData = (intl) => {
    if (!mapContainer) {
        return;
    }
    let childList = [];
    mapContainer.children.forEach(child => {
        if (child.data?.uuid) {
            childList.push(child);
        }
    })
    if (childList.length > 0) {
        childList.forEach(child => {
            mapContainer.removeChild(child);
            child.destroy({ children: true, texture: false, baseTexture: false });
        })
        childList.forEach((child, index) => {
            childList[index] = null;
        });
        childList = [];
    }
}