FastAdmin 前端页面传参

如果我们需要自己在控制器中透传数据到JS中去,则可以使用控制器的assignconfig方法来透传,使用如下

$this->assignconfig('demo', ['name'=>'名称']);
然后我们就可以在JS中使用

Config.demo.name
来获取对应的数据
那么你的问题也就可以先在控制器中使用assignconfig来渲染,如

$this->assignconfig("ids", $this->request->param("ids"));
然后我们在JS中使用

index_url: 'setvip/index/ids/' + Config.ids
即可

//初始化表格处添加按钮
{
    field: 'operate',
    title: __('Operate'),
    table: table,
    //自定义按钮开始
    buttons :[
        {name: 'detail',
            text: '表单',
            title: '表单字段管理',
            icon: 'fa fa-list',
            extend:'data-area=["80%","80%"]',
            classname: 'btn btn-xs btn-primary btn-dialog',
            url: 'field/index?goods_id={id}',
        }
    ],
    //自定义按钮结束
    events: Table.api.events.operate,
    formatter: Table.api.formatter.operate
}
 
 
//字段管理列表(弹出页面)处理按钮的传参
            // 初始化表格参数配置
            Table.api.init({
                extend: {
                    index_url: 'field/index' + location.search,
                    //新增开始
                    add_url: 'field/add?goods_id='+Fast.api.query('goods_id'),
                    //新增结束
//字段列表方法内接受按钮传参并筛选
            //获取分谱id
            $wheres['fa_field.product_goods_id'] =  array('=',$this->request->get('goods_id'));
            $list = $this->model
                    ->with(['goods'])
                    ->where($where)
                    ->where($wheres)
                    ->order($sort, $order)
                    ->paginate($limit);
 
 
//添加字段方法接收传参并渲染到页面
    /**
     * 添加
     *
     * @return string
     * @throws \think\Exception
     */
    public function add()
    {
        if (false === $this->request->isPost()) {
            //增加代码
            $goods_id = $this->request->get('goods_id');
            $this->view->assign("goods_id", $goods_id);
            //增加结束
            return $this->view->fetch();
        }
        $params = $this->request->post('row/a');

 

posted @ 2024-12-11 09:25  张志健  阅读(34)  评论(0编辑  收藏  举报