Laravel-datatables: cómo usar esto en vue.js

Creado en 18 feb. 2018  ·  6Comentarios  ·  Fuente: yajra/laravel-datatables

@yajra ,

¿Puedo pedir ayuda sobre cómo usar en vue.js?

index.blade

   <div class="row" id="app">
        <div class="col-md-12">
            <div class="box box-primary">
                <div class="box-header with-border">
                    <h3 class="box-title"><a href="{{ route('credit.create') }}" type="button" class="btn btn-block btn-success btn-flat">Create</a></h3>
                </div>
                <div class="table-responsive box-body">

                    <table width="100%" class="table table-bordered table-striped" id="my-table">
                        <thead>
                        <tr>
                            <th>Name</th>
                            <th width="20%;"></th>
                        </tr>
                        </thead>

                    </table>

                </div>
            </div>
        </div>

    </div>

este es mi getdata.js

new Vue({
    el:'#app',
    created: function () {
        var mytable= $('#my-table').DataTable({
            processing: true,
            serverSide: true,
            ajax: 'getdata',
            columns: [
                {data: 'particulars', name: 'particulars'},
                {data: 'action', name: 'action', orderable: false, searchable: false}
            ]
        });

    }
});


question

Todos 6 comentarios

Intenté jugar con mi script de tabla de datos de vue personalizado nuevamente. Intente usar la esencia que creé como referencia.

Duplicado de # 1607

¡Gracias!

@yajra tengo un botón de acción en mi controlador para eliminar lo que pasó con la tabla, se muestra y todo, mi pregunta es cómo lo hago para cuando hago clic con la función @click de vue, js funciona.

`$('#user-datable').DataTable({
                processing: true,
                serverSide:true,
                language:{
                    'url': '{!! asset('assets/plugins/datatable/spanish.json') !!}'
                },
                ajax: '{!! route('user.index') !!}',
                columns:[
                    {data: 'id', name: 'users.id'},
                    {data: 'firstname', name: 'users.firstname'},
                    {data: 'lastname', name: 'lastname'},
                    {data: 'username', name: 'username'},
                    {data: 'email', name: 'email'},
                    {data: null, render: function (data) {
                            return '<span class="badge badge-primary">'+data.display_name+'</span>'
                        }, orderable:false, searchable:false},

                    {data: 'action', name: 'action', orderable: false, searchable: false},
                ]
            });`
`return DataTables::eloquent($users)->addColumn('display_name', function (User $user) {
                    return $user->roles->map(function($role) {
                        return str_limit($role->display_name, 30, '...');
                    })->implode(', ');
                })->addColumn('action', function ($user) {
                    return '<a href="user/'.$user->id.'/edit" class="btn btn-default btn-sm btn-icon-anim btn-circle"><i class="fa fa-edit"></i></a>
                            <button type="button" class="btn btn-default btn-sm btn-icon-anim btn-circle" v-on:click="dete('.$user->id.')"><i class="fa fa-trash"></i></button>';
                })->make(true);`

¿Encontraste una solución para @click?

No, he encontrado la solución

alguien encontró una solución a v-on: click?

Enchufe desvergonzado, escribí este componente de envoltura vue de datatables.net: https://github.com/niiknow/vue-datatables-net - @ Ubaidullah92 que debería tener una solución para el evento de clic

Estoy usando yajra/laravel-datatables para la respuesta del lado del servidor. Para soporte nativo de vue, también escribí un bootstrap vue items-provider por b-table aquí https://github.com/niiknow/bvtnet-items-provider (ver demostración)

¿Fue útil esta página
0 / 5 - 0 calificaciones