首页 > 解决方案 > 在 nuxtServerInit 中使用 axios get 时无法对函数进行字符串化

问题描述

我正在尝试 Udemy Nuxt.js 课程将我的应用程序连接到后端,在尝试以下代码时,我在客户端得到了 GET http://localhost: 3000/500 (内部服务器错误),

import Vuex from 'vuex';
import axios from 'axios';
const createStore = () => {
    return new Vuex.Store({
        state: {
            loadedPosts: [],
        },
        mutations: {
            setPosts(state, posts) {
                state.loadedPosts = posts;
            },
        },
        actions: {
          nuxtServerInit(vuexContext, context) {
               return axios
                .get('https://nuxt-blog-7a712.firebaseio.com/posts.json')
                .then((res) => {
                    const postArray = [];
                    for (const key in res.data) {
                        postArray.push({ ...res.data[key], id: key });
                    }
                    vuexContext.commit('setPost', postArray);
                })
                .catch((e) => context.error(e));
        },

WARN 无法对函数 transformRequest 进行字符串化

WARN 无法字符串化函数 transformResponse

WARN 无法字符串化函数 httpAdapter

WARN 无法字符串化函数 validateStatus

WARN 不能字符串化任意非 POJO 可写

WARN 无法对函数进行字符串化

我用谷歌搜索了一些答案,但找不到解决办法,有些帖子谈到了贬值包,但不知道这个包的用法

标签: javascriptjsonvue.jsnuxt.js

解决方案


也许迟到了,但我也遇到了麻烦。警告不是破坏您的代码的原因,它们只是警告

破坏您的代码的必须是其他东西,但是查看您的代码我找不到它..

尝试改变

.catch((e) => context.error(e));

.catch((e) => console.log(e); context.error(e));

更好地了解出了什么问题!


推荐阅读