如何通过laravel(刀片)在vue js中传递数组? 我试图这样做:
// $ users - array 叶片:
<all-users users="{{ $users }}"></all-users>
VUE:
<tr v-for="user in users" >
<td>{{ user.id }}</td>
<td>{{ user.login }}</td>
</tr>
JS:
export default {
props:['users']
}
//不要全部工作
P.S我也尝试过:
<all-users users="{{ $users[0]->toJson() }}"></all-users>
输出:
{"id":2,"email":"usersss@mail.ru","login":"SimpleUser","role_id":0,"images":"public\/img\/default_avatar.png","created_at":null,"updated_at":null}
提前感谢您的帮助
答案 0 :(得分:7)
要将数据从laravel传递到vue,最好的方法是使用Laravel提供的@json选项。因此您的代码将如下所示:
<all-users :users='@json($users)'></all-users>
请记住,您需要使用单引号@json函数。另外,请不要忘记在用户属性中使用“:”,否则它将被解释为字符串。
用于json数据的Laravel文档: https://laravel.com/docs/master/blade#displaying-data
答案 1 :(得分:3)
<all-users users="@json($users)"></all-users>
或
<all-users users="{{ json_encode($users) }}"></all-users>
答案 2 :(得分:0)
<all-users :users='@json($usersInfo)'></all-users>
另外,请记住,您不能在此处使用驼峰式保护套。应该是:
<all-users :users='@json($usersinfo)'></all-users>