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中的模版渲染,在后端渲染返回的是字符串内容,就不会出现问题。

最后

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

相关推荐
老王以为几秒前
为什么 React 和 Vue 不一样?
前端·vue.js·react.js
web打印社区2 分钟前
2026最新Web静默打印解决方案,无插件无预览,完美替代Lodop
前端·javascript·vue.js·electron·pdf
沐知全栈开发10 分钟前
ionic 手势事件详解
开发语言
这个DBA有点耶17 分钟前
分组排名不用窗口函数?那你还在写几十行的子查询
前端·代码规范
ZhiqianXia20 分钟前
《The Design of Design》阅读笔记
前端·笔记·microsoft
有马贵将28 分钟前
【5】微前端知识点总结
前端·架构
mkae30 分钟前
eBPF高性能版fail2ban
前端
lsx20240631 分钟前
Bootstrap 按钮
开发语言
_柴富自由32 分钟前
前端项目国际化解决方案
前端
isixe32 分钟前
Uniapp 监听回到前台并全局唯一弹窗
前端