doulang9953 2016-03-02 20:37
浏览 134

Laravel将json传递给vue.js

I'm using Laravel and I would like to pass json to my new Vue instance. How could I do this.

I pass the employees object like this:

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

Then in my new Vue I do it like this:

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

It throws an error:vue.js:983 [Vue warn]: Error when evaluating expression "CompanyName".

When I put the json manual into the list it works! So like this:

  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
Botsfordborough, 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
West 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);
                    }
                }
            });

So how can I pass the $employees object to my new Vue instance and use it?

  • 写回答

2条回答 默认 最新

  • doushan5222 2016-03-02 20:47
    关注

    My guess is that you have to send your data as JSON. Try this:

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

报告相同问题?

悬赏问题

  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码