delormejonathan/laravel-js-routing

Laravel 4/5 包,用于从 JavaScript 访问路由

v2.0.2 2017-02-27 08:44 UTC

This package is auto-updated.

Last update: 2024-09-21 20:33:26 UTC


README

此包允许您从 JavaScript 中访问 Laravel 的路由。

主要功能是可以在本地和生产环境中轻松使用。

在本地环境中,每次请求都会重写 JS 路由。在生产环境中,JS 路由会被导出到一个静态文件中,以提高性能。

如果您使用 Laravel 4,请阅读此文档: Laravel 4 README

安装

将以下行添加到您的 composer.json 文件中,并运行 composer update

"delormejonathan/laravel-js-routing": "~2.0"

将提供者添加到 app.php 文件中的 providers 部分

DelormeJonathan\LaravelJsRouting\LaravelJsRoutingServiceProvider::class,

将外观添加到 app.php 文件中的 aliases 部分

'JSRouter' => DelormeJonathan\LaravelJsRouting\Facades\JSRouter::class,

将资源发布到公共文件夹

php artisan vendor:publish --tag=public --force

使用方法

在您的应用程序模板中调用 JSRouter 插件

<script type="text/javascript" src="{{ asset('packages/delormejonathan/laravel-js-routing/jsrouter.js') }}"></script>

并在本地动态导入路由文件,在生产环境中静态导入

@if (App::environment() == 'production')
	<script type="text/javascript" src="/js/routes.js"></script>
@else
	<script type="text/javascript">{!! JSRouter::generate() !!}</script>
@endif

现在,您可以在 JavaScript 中使用它了

JSRouter.action('UsersController@edit', { id : 5 }); // For routes without a name
JSRouter.route('mycustomroutename'); // For routes with a name

不要忘记在生产环境中导出路由。您可以在 'dump' 字符后添加自定义路径。默认路径是:public/js/routes.js

php artisan laravel-js-routing:dump
php artisan laravel-js-routing:dump public/mycustompath/mycustomfile.js

配置

您可以通过配置文件更改默认路径。您必须发布配置文件

php artisan config:publish delormejonathan/laravel-js-routing

然后在 app/config/packages 中修改它

常见问题

浏览器控制台报告“没有检测到路由”

确保您至少在 routes.php 中有一个带有名称或控制器的路由。

我为 Laravel 添加了一个路由,但 JSRouter 没有看到它

如果您在生产环境中,记住在更改 routes.php 时使用 php artisan laravel-js-routing:dump 导出您的路由

如果您在本地环境中,请记住您的路由需要指向一个控制器。它可以有一个名称(可选)。此包不与 Closure 路由一起使用。

贡献与改进

当前插件相当基础。它需要一个更好的解析器来管理可选参数。

问题或功能

如果您遇到问题,请随时提出问题或直接与我联系。

致谢

许可证

本项目受 MIT 许可证的许可。