在写百度小程序的时候,自己写了一个json接口获取文章的内容,里面包含图片和html标签和代码。
但是利用rich-text进行调用的时候,发现文章内的图片无法控制大小和样式。
<rich-text selectable="true" nodes="{{item.content}}"></rich-text>
这是调用的方法和方式,现在修改样式方法:
onLoad: function (options) {
var that = this;
// console.log(options);
swan.request({
url: 'https://www.xx.com/api.php?op=content',
data:{
id:options.id,
},
header:{'content-type':'application/json'},
success:function(content){
//获取id寻找对应的文章
var jsonDa = JSON.stringify(content.data).replace(/<img/gi, "<img class='richImg' ")
.replace(/“/g, "“")
.replace(/”/g, "”")
.replace(/…/g, "…");
//遍历得到的数据,给img添加CSS和style
var newResData = JSON.parse(jsonDa);
// console.log(newResData); //得到的数据含有img标签的都有richImg类
that.setData({
newResData: newResData,
})
},
});
很简单的方法哈,可以直接参考和使用,因为我这里是通过上一个页面传值过来的id值返回到数据库查询数据拿到内容再输出,给可能用到的小伙伴一个建议吧。
现在进行样式编辑。
rich-text .richImg{max-width: 90%;max-height: 100%;height: auto !important;width: 90% !important;display: block; text-align: center; margin-left: auto;margin-right: auto; border-radius: 5px;}
rich-text{width: 100%;}
改成你自己喜欢的样式都是可以的哈。