toJSON使用中遇到的问题

目录

为什么要使用JSON

在我的项目中,我想使用layui的模版来渲染我的页面,而这个页面我是想通过将它配置成参数来渲染的

具体实现是这样

javascript 复制代码
var laytpl = layui.laytpl
laytpl(html).render(data, function (string) {
      newHtml = string
    });

这个html就是我已经配成参数的页面,此时是一个通过layui的模版编写的一个模版字符串

data是需要用到的数据

在渲染后我发现,我的对象变成了[object, object]

我意识到时js将对象转为了字符串而导致的,所以这时候我们就需要将对象转为JSON。

使用JSON遇到的问题

我最开始想到的就是用js中的JSON.stringify()

JSON.stringify()会调用我们的toJSON()方法,如果没有自定义的话会调用默认的

在我将页面中的对象转为JSON格式之后,发现还是有问题报错了。

继续深入发现我的JSON变成了&quto;属性名&quto;这样了,为什么会给我转义了呢?我这html是一个字符串也不是html内容啊?

接着就想到是不是laytpl.render之后返回的是html内容呢?结果还真是他,返回的是html内容导致转义了

那我只能将这个页面在后端进行渲染了,使用了groovy中的模版渲染,在后端渲染返回的是字符串内容,就不会出现问题。

最后

如果你对本文有疑问,你可以在文章下方对我留言,敬请指正,对于每个留言我都会认真查看。

相关推荐
excel3 分钟前
前端必备:从能力检测到 UA-CH,浏览器客户端检测的完整指南
前端
前端小巷子10 分钟前
Vue 3全面提速剖析
前端·vue.js·面试
悟空聊架构16 分钟前
我的网站被攻击了,被干掉了 120G 流量,还在持续攻击中...
java·前端·架构
CodeSheep18 分钟前
国内 IT 公司时薪排行榜。
前端·后端·程序员
尖椒土豆sss21 分钟前
踩坑vue项目中使用 iframe 嵌套子系统无法登录,不报错问题!
前端·vue.js
遗悲风22 分钟前
html二次作业
前端·html
江城开朗的豌豆26 分钟前
React输入框优化:如何精准获取用户输入完成后的最终值?
前端·javascript·全栈
CF14年老兵26 分钟前
从卡顿到飞驰:我是如何用WebAssembly引爆React性能的
前端·react.js·trae
画月的亮29 分钟前
前端处理导出PDF。Vue导出pdf
前端·vue.js·pdf
江城开朗的豌豆35 分钟前
拆解Redux:从零手写一个状态管理器,彻底搞懂它的魔法!
前端·javascript·react.js