繁体   English   中英

Laravel将json传递给vue.js

[英]Laravel pass json to vue.js

我正在使用Laravel,我想将json传递给new Vue实例。 我该怎么做。

我通过员工对象,像这样:

 $employees = EmployeeModel::with('role','department.company')->get();
 return view('employees.employees')->with('employees',$employees);

然后在我的新Vue中这样做:

new Vue({
            el: 'body',
            data:{
                role: '',
                company: '',
                list:'{{ $employees }}',
                created() {
                    this.list = JSON.parse(this.list);
                }
            }
        });

它将引发错误:vue.js:983 [Vue警告]:评估表达式“ CompanyName”时出错。

当我将json手册放入列表时,它可以工作! 像这样:

  new Vue({
                el: 'body',
                data:{
                    role: '',
                    company: '',
            list:[{"EmployeeId":1,"RoleId":5,"DepartmentId":6,"InternId":1,"FirstName":"Zoe","LastName":"Altenwerth","Bio":"Quidem perferendis.","email":"Kole.Bechtelar@hotmail.com","LinkedIn":"Sterling.Schowalter@example.net","Gender":0,"password":"$2y$10$bbUlDh2060RBRVHSPHoQSu05ykfkw2hGQa8ZO8nmZLFFa3Emy18gK","PlainPassword":"gr^S=Z","remember_token":"D528C0Ba1Xzq3yRV7FdNvDd8SYbrM0gAJdFUcOBq4sNEJdHEOb2xIQ0geVhZ","Address":"0593 Dallin Parkway Apt. 499\nBotsfordborough, MT 12501","Zip":"21503-","City":"East Janiston","ProfilePicture":null,"BirthDate":"2002-10-13 00:00:00","StartDate":"1995-11-09 21:42:22","EndDate":"2011-01-27","Suspended":0,"created_at":"2016-02-29 12:21:42","updated_at":"2016-03-02 11:53:58","deleted_at":null,"role":{"RoleId":5,"RoleName":"Superadministrator","Description":"Mag administrators toevoegen en bewerken","deleted_at":null,"created_at":"-0001-11-30 00:00:00","updated_at":"-0001-11-30 00:00:00"},"department":{"DepartmentId":6,"CompanyId":12,"DepartmentName":"com","Description":"Accusantium quae.","deleted_at":null,"created_at":"2016-02-29 12:21:41","updated_at":"2016-02-29 12:21:41","company":{"CompanyId":12,"CompanyName":"Dare, Bailey and Bednar","Logo":null,"Address":"85762 Tabitha Lights\nWest Jettie, AK 20878-2569","Zip":"29601","City":"Traceside","KvKNumber":"84c70661-9","EcaboNumber":"fdee61e3-a22d-3332-a","deleted_at":null,"created_at":"2016-02-29 12:21:41","updated_at":"2016-02-29 12:21:41"}}}]
                    created() {
                        this.list = JSON.parse(this.list);
                    }
                }
            });

那么如何将$ employees对象传递给new Vue实例并使用它呢?

我的猜测是您必须将数据作为JSON发送。 尝试这个:

 return view('employees.employees')->with('employees',json_encode($employees));

在声明Vue之前,我是这样做的。

var employees = {!!  json_encode($employees) !!};

然后

 list: employees,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM