定制 twentyonetf/ajax-table-card 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

twentyonetf/ajax-table-card

最新稳定版本:0.0.9

Composer 安装命令:

composer require twentyonetf/ajax-table-card

包简介

A customisable Laravel Nova card that fetches data through ajax calls.

README 文档

README

Description

A customisable Laravel Nova card that fetches data through ajax calls.

Why?

To allow displaying certain data on the dashboard or any other place of your choice, while fetching the data through an AJAX call to reduce the initial page load time.

Installation instruction

composer require twentyonetf/ajax-table-card

How?

  1. Create a class that extends AjaxTableCard
<?php

namespace App\Nova\Cards;

use Twentyonetf\AjaxTableCard\AjaxTableCard;

class NewUsers extends AjaxTableCard
{
    /**
     * The width of the card (1/3, 1/2, or full).
     *
     * @var string
     */
    public $width = 'full';

    public string $title = 'New Users';

    public array $header = [
        'ID', 'Name', 'Email', 'View'
    ];

    public bool $expanded = true;

    public bool $link = '/api/new-users;
}

You could also use this artisan command:

php artisan card:create {CardClassName}
  1. Register card like any nova card, for example: NovaServiceProvider if you want it on the dashboard.
    /**
     * Get the cards that should be displayed on the Nova dashboard.
     *
     * @return array
     */
    protected function cards(): array
    {
        return [
            (new NewUsers())
        ];
    }
  1. Generate and pass the data to the card.

Route::get('/api/new-users', function () {

    $users = User::today()->get();
    
    $data = $users->map(function ($user) {
        return [
            $session->id,
            $user->name,
            $user->email,
            "/admin/resources/users/{$user->id}"
        ];
    });

    return $data;
})

Customisation

Option Type Description default
$title string Used to set the title of the card. Ajax Table Card
$header array An array of the items in the header of the table. null
$link string The link to fetch the data from. null
$cache string How long to cache the data for. 86400
$linkable bool Is the last column of the table a link to a page? true
$expanded bool The default status of table, expanded or collapsed true
$countable bool Display a counter of how many results next to the title true
$hideWhenEmpty bool Hide the card when there's no data. true

Screenshots

统计信息

  • 总下载量: 2.07k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 0
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-02-28