Dashboard

A default dashboard is included in app/admin/admin_controller.ts.

Customization

Override the builder method to customize the dashboard layout and content.

import Controller from 'easeadmin/admin/controllers/admin_controller'
import amis from 'easeadmin/builder/amis'

export default class AdminController extends Controller {
  protected builder() {
    // Return a grid layout with 3 columns, each containing a panel
    const grids = amis('grid').columns([
        amis('grid_item').md(4).body(
            amis('panel').body([
               amis('tpl').tpl('column data: ${column1}')
            ])
        ),
        amis('grid_item').md(4).body(
            amis('panel').body([
               amis('tpl').tpl('column data: ${column2}')
            ])
        ),
        amis('grid_item').md(4).body(
            amis('panel').body([
               amis('tpl').tpl('column data: ${column3}')
            ])
        )
    ])

    // Return a page with show as the initial data API
    return amis('page').initApi(this.ctx.admin.api('show')).body(grids)
  }
}

Override the show method to return custom data required by the builder method

import Controller from 'easeadmin/admin/controllers/admin_controller'
import amis from 'easeadmin/builder/amis'

export default class AdminController extends Controller {
    async show() {
        return this.ok({
            column1: '1',
            column2: '2',
            column3: '3',
        })
    }
}
ON THIS PAGE