fastadmin使用笔记 - 理解table上面的快捷渲染类型

先贴一套官网挂的展示类型合集:

Table.api.formatter.icon //渲染成图标按钮
Table.api.formatter.image //渲染成单张图片
Table.api.formatter.images //渲染成多张图片
Table.api.formatter.content //内容自动截取
Table.api.formatter.status //渲染成状态
Table.api.formatter.normal //渲染成label
Table.api.formatter.toggle //渲染成开关
Table.api.formatter.url //渲染成文本框链接
Table.api.formatter.search //渲染成搜索链接
Table.api.formatter.addtabs //渲染成打开新选项卡链接
Table.api.formatter.dialog //渲染成弹窗链接
Table.api.formatter.flag //渲染成标志
Table.api.formatter.label //渲染成标志
Table.api.formatter.datetime //渲染成日期时间
Table.api.formatter.operate //渲染成操作栏按钮
Table.api.formatter.buttons //渲染成按钮组

常用的以下:

1.Table.api.formatter.datetime 渲染成时间日期

一般curd一键生成的时候,会自动把time,_time渲染成 ,这种渲染能在通用搜索里面去搜索时间段筛选,支持对相关字段设定的如今天,昨天,近七天的数据筛选,也可以自定义选择区间,总体来讲好评;

2.Table.api.formatter.toggle 渲染成开关

这个东西快捷对数据的status进行显示隐藏的切换功能很友好,不过默认只支持status字段,如果需要支持其他字段,需要在对应的controller里面添加:

protected $multiFields = "status,integral,discount,logo,shop";

否则在非超级管理的账号会提示“没有权限”,算个小坑,避开就好评

3.Table.api.formatter.image 和 Table.api.formatter.images

渲染成单张多张图片,多张的支持以英文逗号隔开的图片路径字段,它能自己给你渲染成图组,可以点击大图切换;但是如果这个图片路径空的话就会破图,体验挺差;如果自定义formatter的话,点击放大就没效果了,投机取巧的解决方案如下:

                        {field: 'image', title: __('Image'), operate: false, events: Table.api.events.image, formatter: function (value, row, index){
                                if(value==""||value==null||value==''){
                                    return "-";
                                }else{
                                    return "<a href='javascript:'><img class='img-sm img-center' src='"+Fast.api.cdnurl(value)+"'></a>";//这里是重点
                                }
                            }},

Fast.api.cdnurl是require-table里面的引用,再往上追溯大概就是图片类型的渲染js会拼接设置的上传域名

4.Table.api.formatter.label 和 Table.api.formatter.flag 和Table.api.formatter.normal

感觉这俩好像是同一种作用,渲染成标签,支持点击快捷筛选同类型的数据,一般我会用来渲染死关联的数据,比如设置好了searchList是 {1:"大",2:"中",3:"小"},它可以自己找到value对应需要展示的内容显示成label,我以前没读文档的时候都是直接写死,太傻了hhh;不过这个标签好像没有颜色区分,都是label label-primary的颜色,颜色不能区分所以好评减半;normal有颜色区分,但是没有背景,能中和一下就好了

5.Table.api.formatter.url 渲染出来是个文本框,文本框右边有个快捷访问链接的按钮,点击之后浏览器会开个新标签页去访问这个url

未完待续...

 

posted @ 2021-04-28 09:29  顾笙言啊顾笙言  阅读(2006)  评论(0编辑  收藏  举报