javascript - Angular JS+Laravel -- 在 URL::route 外观中回显 Angular 数据

标签 javascript php angularjs

我正在开发一个 Angular JS + Laravel 应用程序。 在我的页面中,我获取用户列表,当单击一行时,它会重定向到编辑用户页面。

这是我的代码。

Blade 模板

<tbody>
   <tr ng-repeat="data in staffArray">
   <td>##data.user_fname## ##data.user_lname##</td>
   <td>##data.user_mobile##</td>
   <td>##data.branch_location##</td>
   <td>##data.catagry_name##</td>
   <td>
     <span><a class="editThis" href="{{URL::route('editStaff',["##data.user_id##"])}}">edit</a></span>
     <span><a class="dltThis" href="">delete</a></span>
    </td>
 </tr>
</tbody>

enter image description here Angular Controller

app.controller('staffController',function($scope,$http){
  $http.get('getStaffApi').success(function (data,response){
    $scope.staffArray = data;
    console.log(data);
 })
});

Laravel 路线。

Route::get('staffs', array('as'=>'staffs','uses'=>'StaffController@staffView'));
Route::get('edit-staff-{id}', array('as'=>'editStaff','uses'=>'StaffController@editStaff'));
Route::get('getStaffApi', array('as'=>'get_staff','uses'=>'GetApiController@getStaffs'));

现在我无法在 Controller 中获取 id 的值来进行如下编辑操作。

public function editStaff($id)
{
    $arr = User::find($id);
    return $arr ;
}

在地址栏中显示,如 http://localhost/onetouchcafe/dev/edit-staff-%23%23data.user_id%23%23

如何解决这个问题......??? 如何在 URL::route 外观中回显 Angular 数据?

最佳答案

您的代码存在 Angular 插值问题

<a href="{{URL::route('editStaff',["##data.user_id##"])}}">Bad Href</a>

这将构建一个与您在浏览器中看到的完全一样的 href,因为 # 被替换为 url 编码实体。 Angular 不知道如何用你想要的 id 来插入它,因为它在 href 中看不到 ##

我看不到使用 Laravel URL 外观来阻止其 url 编码的方法,因此您可能必须求助于类型化路由或扩展 Laravel 以允许未编码的参数。

<a href="my/root/##data.user_id##">Link</a>

或者,不要使用路由外观并让 Angular 处理 Controller 内的点击。 (正如评论中指出的,这不是一个很好的方法,但我将其留在这里供引用)

<a ng-click="click(data)">Link</a>

关于javascript - Angular JS+Laravel -- 在 URL::route 外观中回显 Angular 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31625561/

相关文章:

javascript - 返回 json 时使用模板文字? Node.js

javascript - 为什么我无法使用普通方法访问同一域上的 iframe?

Javascript parseInt parseFloat 和舍入小数

javascript - POST 到外部 URL (webhook) 但重定向到不同的 URL

javascript - 如何从已加载的资源中检索 SVG 数据?

PHP UTF-8 问题 - 如果我在 PHP 中创建一个字符串...它是 UTF-8 格式的吗?

php - LinkedIn 回调不适用于某些 URL(使用 Zend Framework)

javascript - 组合/扩展/"subclassing"Angular 指令?

AngularJS:无法读取未定义的 $http 的属性 'get'

html - ng-grid 标题单元格中的文字换行