首先放上报错内容

TypeError: Converting circular structure to JSON
–> starting at object with constructor ‘Object’
— property ‘_renderProxy’ closes the circle
(想标红的,但是不会)

然后说下我的报错的位置

我是想在路由里将路由的信息存到vuex里,代码如下

import store from '@/store';
router.beforeEach((to, from, next) => {
  // 设置路由数据
  let arr = to.matched;
  store.commit("setNav", arr);
  next();
});

没错就是这里出了问题

再来说下报错的原因

类型错误:将循环结构转换为JSON
上面是翻译,大概意思是说什么循环嵌套。我就直接理解为占用吧(我这只是方便理解别当真,详细原因可以自行百度,大神们解释的清楚的多)。

知道原因就好办了下面就来解决

(请直接翻到最后,这些是个傻子的操作不用管,当然原理是没错的)

router.beforeEach((to, from, next) => {
  // 设置路由数据
  let arr1 = to.matched;
  let arr2 = [];
  for (let i = 0; i < arr1.length; i++) {
    arr2[i] = arr1[i];
  store.commit("setNav", arr2);
  next();
});

这是我的第二版,没错依然失败了
原因呢arr1的数据格式是这样的

{...}, {...}, {...},

它是一个数组,数组里是对象,我上面的做法只是还是没有完全复制一个新的出来
这就涉及到变量赋值的问题了,数组和对象都是引用传递

最后完全复制一个就能够解决

router.beforeEach((to, from, next) => {
  // 设置路由数据
  let arr1 = to.matched;
  let arr2 = [];
  for (let i = 0; i < arr1.length; i++) {
    arr2[i] = { path: null, name: null };
    arr2[i].path = arr1[i].path;
    arr2[i].name = arr1[i].name;
  store.commit("setNav", arr2);
  next();
});

时隔几个月我又来更新了,我发现当时我就是个傻子,明明一行代码解决的问题…

router.beforeEach((to, from, next) => {
  // 设置路由数据
  const arr1 = to.matched;
  const arr2 = JSON.parse(JSON.stringify(arr1));
  store.commit("setNav", arr2);
  next();
});

这就好了,原理就是把数组或对象转化成JSON(当字符串吧),然后再转回来,就成了一个新的了。。。

首先放上报错内容TypeError: Converting circular structure to JSON–&gt; starting at object with constructor ‘Object’— property ‘_renderProxy’ closes the circle(想标红的,但是不会)然后说下我的报错的位置我是想在路由里将路由的信息存到vuex里,代码... [Vue warn]: Error in nextTick: "TypeError: Converting circular structure to JSON --> starting at object with constructor 'Vue' | property '$options' -> object with constructor 'O...
这种报错一般是数据处理的问题。比如: 我想在代码中把某个数组对象转换为Json字符串 JSON.stringify(this.$store.state.tagsView.visitedViews) 该数组对象的数据结构为: 这样转换就会造成“TypeError: Converting circular structure to JSON报错。 但其实在需求中我只用到path字段的信息,所以应该处理完再转化为json字符串: const visitedViews_temp = this.$store.s
今天把最近一直在开发的小程序放安卓手机上测试一下,结果某个页面就一直报错: Uncaught TypeError: Converting circular structure to JSON 先说一下基本的环境: 系统:Android 6.0.1 手机:小米4 微信版本:6.6.6 小程序基于mpvue开发 在看到这个错误的时候,明白导致的原因应该是因为一个对象面有循环引用,然后这个对象不幸的被JSON.stringify给调用了 可是这个有循环引用的对象在哪就不清楚了。 一开始想的是vue对象的data,因为小程序面,jscore会把这个data stringify之后发送给webvie
json序列化的时候遇到TypeError: Converting circular structure to JSON 该错误的原因就是存在自己引用自己的情况。不多少上代码 var cache = []; var aa = JSON.stringify(rowData, function(key, value) { if (typeof value === 'ob...
1.业务需求: vue项目使用el-tree组件时需要将树形的某一个node对象存储起来,存储的时候需要使用JSON对象来转换为字符串的形式,此时出现Converting circular structure to JSON报错JSON转换失败。 2.解决方案: 在网上查找了资料,这个错误其实是因为被JSON转化的对象的子项存在循环引用,JSON转化时其实也是一个深度拷贝的过程,但是存在循环引用的对象,
TypeError: Converting circular structure to JSON –> starting at object with constructor ‘Socket’ | property ‘parser’ -> object with constructor ‘HTTPParser’ — property ‘socket’ closes the circle #在使用express搭建一个简易服务器时,测试接口发现get能过,并且能成功返回req.params
[Vue warn]: Error in render: “TypeError: Cannot read property ‘rightsLevel’ of null” 解决方法 <!-- 作用域插槽 --> <template slot-scope="scope"> <el-button :type="this.rightsLevel[scope.row.level][1]" plain>{{this.rightsLevel[scope.row.level][0
Cocos Creator做微信小游戏的时候点击按钮出现如下报错 VM76 WAGame.js:2 Error: Converting circular structure to JSON --> starting at object with constructor 'Object' | property '_parent' -> object with constructor 'Object' | property '_children' ->
let matched = this.$route.matched.filter(item => item.meta && item.meta.title) matched.map(val => { // 解决方法 val.instances = {} // levelList = this.jsons(levelList) this.$store.commit('app. 3.问题定位:      先看报错代码:大概意思是, 传给优化器的learning_rate参数错误。 模型训练是在服务器Linux环境下进行的,之后在本地Windows(另一环境)继续跑代码,所以初步怀疑是keras版本不一致导致的。  Linux下keras版本为: 本地版本: 再结合大佬博客 解
在使用JSON.stringify方法去转化成字符串,会报错TypeError: Converting circular structure to JSON 原因: 对象中有对自身的循环引用; let test = { a: 1, b: 2 }; test.c = test; // 循环引用 JSON.stringify(test); // 报错 解决方法: 下面的 json_str 就是JSON.stringify 转换后的字符串 var cache = []; var json_str =
vue sessionStorage TypeError: Converting circular structure to JSON vue-admin-template顶部网页加载横条特别慢,打开浏览器调试界面,发现报错TypeError: Converting circular structure to JSON --> starting at object with constructor 'Vue' , 定位到permission.js中的代码 sessionStorage.setI