【问题标题】:Laravel URL Generator With Angular JS Varible带有 Angular JS 变量的 Laravel URL 生成器
【发布时间】:2017-03-05 18:49:08
【问题描述】:

我正在使用 Angular JS 作为前端和 Laravel 作为后端来制作应用程序。

我有一个主数据表视图列表以及一个删除和编辑选项。

<a class="resedit btn btn-sm btn-default" href="{{URL::route('edit_repair_category',[[category.id]])}}/"><i class="icon-note"></i></a>
<a title="Delete" ng-click="deleteRow($event,category.id,'{{URL::route('delete_repair_category')}}',currentPage)" class=" btn btn-sm btn-delete"><i class="glyphicon glyphicon-trash"></i></a>

上面我正在使用 Laravel URL Generator 生成编辑页面的 URL,但是我想传递主数据的 ID 以从控制器中获取数据。

我将 [[ ]] 用于 Angular JS 绑定。

URL::route('edit_repair_category',[[category.id]])

现在我得到了异常使用未定义的常量类别 - 假定为“类别”

路线。

Route::get('edit-repair-category/{id}', ['as' => 'edit_repair_category', 'uses' => 'RepairCategoryController@editRepairCategory']);

有没有可能?

【问题讨论】:

  • 能否告诉我们,href 的输出是什么?
  • 它显示致命错误。没有办法检查标签。

标签: javascript angularjs laravel-5.3


【解决方案1】:

您收到此错误的原因是因为您正在混合使用 javascriptPHP

您代码的PHP 部分将在服务器上进行处理,然后传递给浏览器,然后将在其中处理javascript,因此就PHP 而言,您正在尝试使用常量。

由于category.id 只是在网址的末尾,您应该能够执行以下操作:

<a class="resedit btn btn-sm btn-default" href="{{ URL::route('edit_repair_category', null) }}/@{{category.id}}"><i class="icon-note"></i></a>

null 在这里被用来防止抛出错误。

{{category.id}} 之前的 @ 只是告诉 Blade 将其视为普通字符串而不对其进行任何处理(@ 符号将被 Blade 删除)。

希望这会有所帮助!

【讨论】:

  • 错误.... [Route: edit_repair_category] ​​缺少必需的参数
  • @JpDevs 当然!对于那个很抱歉。我已经更新了我的答案。
  • 不工作。您的答案 url('edit-repair-category') 并不完美。它只是制作我提供的网址。我的路线有一个前缀,但这里没有。
  • 我再次更新了我的答案。您应该能够将 null 传递给路由。
  • 嗨,我怎样才能发送两个或多个变量。一旦我检查不正常工作。
猜你喜欢
  • 2023-03-31
  • 1970-01-01
  • 2019-06-07
  • 2014-11-13
  • 2017-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-03
相关资源
最近更新 更多