代码之家  ›  专栏  ›  技术社区  ›  Saqib Naseeb

Axios取消请求显示浏览器警报

  •  0
  • Saqib Naseeb  · 技术社区  · 4 年前

    Axios cancel Request显示浏览器警报,在单击“确定”之前停止执行。 我想取消我的请求,我所有的Api调用都在一个名为 .

    具有cancelToken的组件。

    componentDidMount() {
            const CancelToken = axios.CancelToken;
            // create the source
            this.source = CancelToken;
        }
    
        persistCancel = (cancel) => {
            this.setState({cancels: [...this.state.cancels, cancel]})
        }
    
        componentWillUnmount(){
            this.state.cancels.forEach((c) => c());
        }
    

    getScoreCardCall({profileId, campaignIds, startDate, endDate}, (scoreCards) => {
                //success
                this.setState({
                    scoreCards,
                    showComcardsLoader: false
                })
            },this.source,this.persistCancel);
    
    

    而在 阿皮考尔斯.js

    export function getScoreCardCall(params,callback, source,onRequest){
        axios.get(url,
            {
            cancelToken: new source(function executor(c) {
                onRequest(c);
                }),
            params:{
                profileId: params.profileId,
                campaignId: params.campaignIds.toString(),
                startDate: params.startDate,
                endDate: params.endDate,
            }
            })
        .then(res => {
            if(callback != null){
                if(res.data.length!=0){
                    callback(res.data);
                }
            }
        })
        .catch(err => {
            if (axios.isCancel(err)) {
                console.log(err.message);
              }
        })
    }
    

    alert

    有人能告诉我为什么每次取消请求都会显示警报吗??或者我做错了什么?

    0 回复  |  直到 4 年前