首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Axios.get射击两次

Axios.get射击两次
EN

Stack Overflow用户
提问于 2022-05-29 16:20:43
回答 1查看 545关注 0票数 0

因此,我有一个代码块,有效地获取url并将其转换为一个请求到Open。

问题是,无论出于什么原因,我的axios.get似乎被执行了两次。相对新开发人员的反应,我猜我是忽略了一些基本的东西。

任何建议都会受到极大的欢迎。提前谢谢。

代码语言:javascript
复制
import React, { useEffect, useState } from "react";
import axios from 'axios';
import {useParams} from 'react-router-dom';
import configData from './config/config.json'


const Article  = () => { 

    console.log('0')
    const requestarticle = useParams();
    console.log('1')
    const [url] = useState(configData.BACKEND_URL + '/articles/' + requestarticle.page)
    console.log('2')
    const [article, setArticle] = useState(null)
    console.log('3')

    useEffect(() => {
        console.log('4')
        axios.get(url)
            .then(Response => 
                {setArticle(Response.data)}
                )
    }, [url])


    if (article){
        return ( 
            <>
            <div id="page-content" dangerouslySetInnerHTML={{__html: article.content}} class="container-sm text-start border border-dark rounded border-3"></div>
            </>
            );
        }

        return(

            <h1> NOTHING TO RETURN</h1>

        )
  
}
 
export default Article ;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-29 16:21:19

这是由于[StrictMode](https://reactjs.org/docs/strict-mode.html)最有可能在您的根树。

什么是严格模式?

StrictMode是一个用于突出显示应用程序中潜在问题的工具。

如何使useEffect() 运行两次?

它为它的后代激活额外的检查和警告,换句话说.渲染两次。

Note:严格模式检查仅在开发模式下运行;它们不影响产品构建。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72425350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档