Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 带参数的Axios柱_Javascript_Reactjs_Mongodb_Axios - Fatal编程技术网

Javascript 带参数的Axios柱

Javascript 带参数的Axios柱,javascript,reactjs,mongodb,axios,Javascript,Reactjs,Mongodb,Axios,我有一个问题,我的param articleid没有传递给我的route/createAnswer。当我在这里记录我的文章数据时。\u id是我将传递给我的route/createAnswer的所需id(例如60B4F5D8C8BE1D4CB0CD6CA) const createAnswer = () => { axios.get('/getUserByFirebaseid', { params: { firebaseid: firebas

我有一个问题,我的param articleid没有传递给我的route/createAnswer。当我在这里记录我的文章数据时。\u id是我将传递给我的route/createAnswer的所需id(例如60B4F5D8C8BE1D4CB0CD6CA)

const createAnswer = () => {
    axios.get('/getUserByFirebaseid', {
        params: {
            firebaseid: firebase.auth().currentUser.uid
        }
    })
    .then((response) => {
        const userData = response.data[0];
        console.log(articleData._id);
        axios({
            url: '/createAnswer',
            method: 'post',
            params: {
                articleid: articleData._id
            },
            data: {
                content: editorContent,
                creator: userData._id,
                voting: 0
            }
        }).then(() => {
            console.log("Answer successfully created");
        }).catch((error) => {
            console.error("Answer is not successfully created", error);
        })
    })
    .catch((error) => {
        console.error("Userdata are not loaded", error);
    })
}
但是当我在这里登录我的articleid时,它是未定义的

router.post('/createAnswer', (req, res) => {
    console.log("ArticleId: ", req.params.articleid);
    console.log("Answerdata: ", req.body);
    const answerData = req.body;
    const newAnswer = Answer(answerData);
    newAnswer.save((error) => {
        if (error) {
            res.status(500).json({ msg: "Internal server error" });
        } else {
            res.json({ msg: "Answer successfully write to MongoDB" });
        }
    });
});
我如何成为路线/createAnswer中的id?我还尝试记录req.body.articleid,但结果相同(未定义)。我也通过stackoverflow在这里搜索了一个解决方案,但我没有找到一个适合我的解决方案


感谢您的帮助。

使用simplecreators链接,问题的解决方案是以下代码:

const createAnswer = () => {
    axios.get('/getUserByFirebaseid', {
        params: {
            firebaseid: firebase.auth().currentUser.uid
        }
    })
    .then((response) => {
        const userData = response.data[0];
        console.log(articleData._id);
        axios({
            url: `/createAnswer/${articleData._id}`,
            method: 'post',
            data: {
                content: editorContent,
                creator: userData._id,
                voting: 0
            }
        }).then(() => {
            console.log("Answer successfully created");
            //toArticle.push("/article");
        }).catch((error) => {
            console.error("Answer is not successfully created", error);
        })
    })
    .catch((error) => {
        console.error("Userdata are not loaded", error);
    })
}
articleData.\u id在/createAnswer路由之后传递

注意“not”

在路由器代码中,将以下内容添加到route/createAnswer/:articleid。现在,它在日志中显示传递的id

router.post('/createAnswer/:articleid', (req, res) => {
    console.log("ArticleId: ", req.params.articleid);
    console.log("Answerdata: ", req.body);
    const answerData = req.body;
    const newAnswer = Answer(answerData);
    newAnswer.save((error) => {
        if (error) {
            res.status(500).json({ msg: "Internal server error" });
        } else {
            res.json({ msg: "Answer successfully write to MongoDB" });
        }
    });
});

你看过这篇文章吗非常感谢您,它起了作用:)