定制 jinoantony/laravel-kanban 二次开发

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

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

jinoantony/laravel-kanban

最新稳定版本:v1.0.1

Composer 安装命令:

composer require jinoantony/laravel-kanban

包简介

Kanban boards for laravel

README 文档

README

A laravel wrapper for the jkanban library.

Installation

You can install this package using composer.

composer require jinoantony/laravel-kanban

This package supports package auto-discovery, so you don't have to register it manually. If you want to manually register the provider, add the following line to config/app.php file.

JinoAntony\Kanban\LaravelKanbanServiceProvider::class,

Usage

This package uses jkanban library under the hood. So don't forget to include jkanban.min.js and jkanban.min.css in your view files.

Create kanban boards

You can use the artisan command to generate kanban boards.

php artisan kanban:make TaskKanban

This will create a new file TaskKanban in the app/Kanban directory.

By default the structure for the kanban board is like this.

class TaskKanban extends Kanban
{
    /**
     * Get the list of boards
     *
     * @return KBoard[]
     */
    public function getBoards()
    {
        return [
            KBoard::make('board1')
                ->setTitle('Board1 title')
                ->canDragTo('board2'),

            KBoard::make('board2')
                ->setTitle('Board2 title')
                ->canDragTo('board3'),

            KBoard::make('board3')
                ->setTitle('Board3 title')
                ->canDragTo('board2')
                ->canDragTo('board1'),
        ];
    }

    /**
     * Get the data for each board
     *
     * @return array
     */
    public function data()
    {
        return [
            'board1' => [
                KItem::make('1')
                    ->setContent('Item1'),
                KItem::make('2')
                    ->setContent('Item2'),
            ],
            'board2' => [
                KItem::make('3')
                    ->setContent('Item3'),
                KItem::make('4')
                    ->setContent('Item4'),
            ],
            'board3' => [
                KItem::make('5')
                    ->setContent('Item5'),
                KItem::make('6')
                    ->setContent('Item6'),
            ],
        ];
    }

    public function build()
    {
        return $this->element('.kanban-board')
            ->margin('20px')
            ->width('365px');
    }

}

Create a view to render the board.

<!DOCTYPE html>
<html lang="en">
<head>
    <title>Kanban</title>
    <link rel="stylesheet" href="{{ asset('css/jkanban.min.css') }}" />
</head>
<body>
    <div class="kanban-board"></div>
    
    <script src="{{ asset('js/jkanban.min.js') }}"></script>
    {!! $kanban->scripts() !!}
</body>
</html>

Then in your controller,

use App\Kanban\TaskKanban;

class TaskController extends Controller
{
    public function get(TaskKanban $kanban)
    {
        return $kanban->render('kanban');
    }
}

Now add a route in web.php.

Route::get('task', 'TaskController@get');

统计信息

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

GitHub 信息

  • Stars: 22
  • Watchers: 3
  • Forks: 9
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2020-05-06

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固