后台管理有个模块,要根据登录的管理员来判断是否展示某一列,比如操作那一列。从官网了解到visible 可以对 列进行隐藏和展示 即
{field: 'name', title: __('姓名'),operate: false,
visible:fasle,
}
条件的判断是个问题,本来看官网,可以写为 函数形式,即
visible:function(row){
if(row.status==1){
return false;
} else {
return true;
}
}
但是无法实现,因为 visible 不支持函数。
最后还是从后端传值到前端,,前端直接 赋值变量 等于 false 或者 true 来实现。注意,fastadmin 传值,不能用
$this->assign("status","$status);
而应该用
$this->assignconfig("status",$status);
js 内接值 则是
Config.status
最后 贴一下这部分完整代码
后端
if($userid == "1") {
$this->assignconfig("status",0);
} else {
$this->assignconfig(status",1);
}
前端
接值
var look_status = Config.status;
渲染
{field: 'name', title: __('名字'),operate: false,
visible:look_status,
},
其实 visible 后面,直接跟 config.status 就可以了,改了几个小时,实在不想再动了。