macellan/laravel-js-routes

从JavaScript生成Laravel路由

安装数:18 320

依赖者: 0

建议者: 0

安全: 0

星星: 3

关注者: 1

分支: 11

语言:JavaScript

2.2 2022-09-17 17:18 UTC

This package is auto-updated.

Last update: 2024-09-17 21:34:48 UTC


README

原因

我喜欢Laravel的路由系统,并且经常使用像route('users.show', array('id' => 1))这样的命名路由来生成http://domain.tld/users/1。随着JavaScript框架(AngularJS、EmberJS、Backbone等)的兴起,很难跟踪后端和JavaScript REST调用之间路由的变化。这个库的目标是将这些命名路由暴露给前端,这样你就可以这样做:Router.route('users.show', {id: 1})并得到相同的结果。

安装

您可以通过composer安装此包

composer require macellan/laravel-js-routes

使用

默认情况下,该命令将在您的项目根目录下生成一个routes.js文件。这包含了您的应用程序中所有的命名路由。就这样!您可以开始使用了。从终端运行artisan命令以查看新的routes:javascript命令。

php artisan routes:javascript

懒提示如果您使用Grunt,可以为路由文件变化设置一个监视器,以便在文件变化时运行此命令。

参数

选项

JavaScript使用

您必须将生成的文件包含在您的视图(或您的资产构建过程)中。

<script src="/path/to/routes.js" type="text/javascript">

然后您在全局范围内有一个Routes对象。您可以使用它作为

Router.route(route_name, params)

示例

Router.route('users.show', {id: 1}) // returns http://dommain.tld/users/1

如果您分配了不在URI上存在的参数,它们将被附加为查询字符串

Router.route('users.show', {id: 1, name: 'John', order: 'asc'}) // returns http://dommain.tld/users/1?name=John&order=asc

贡献

composer install --dev
./vendor/bin/phpunit
npm install -g grunt-cli
npm install
grunt travis --verbose

除了完整的测试套件外,还有Travis集成。

发现了一个错误?

请告诉我!发送一个pull request或一个补丁。有问题吗?问吧!我会对所有提交的问题做出回应。

灵感

尽管没有复制代码,但这个包在很大程度上受到了FOSJsRoutingBundle(用于Symfony)的启发。

许可证

此软件包是开源软件,许可协议为MIT许可