ianrothmann/rocket-laravel-framework

RocketFramework Laravel 辅助工具

1.0.0 2021-02-13 04:20 UTC

This package is auto-updated.

Last update: 2024-09-13 12:10:56 UTC


README

RocketFramework for Vue Laravel 辅助工具。

安装

composer install ianrothmann/rocket-laravel-framework

在 config/app.php 中

服务提供者

IanRothmann\RocketLaravelAppFramework\ServiceProviders\RocketAppServiceProvider::class

门面

'Rocket' =>IanRothmann\RocketLaravelAppFramework\Facades\Rocket::class

发布配置

php artisan vendor:publish --provider="IanRothmann\RocketLaravelAppFramework\ServiceProviders\RocketAppServiceProvider"  --tag="config"

菜单

菜单可以在中间件中指定,也可以在任何控制器中修改,在传递视图之前。

用法

您可以给菜单起一个名字,例如 "main",然后链接着项目。图标是可选的。如果您需要自定义项目,可以使用 ->custom

Rocket::menu('main')
        ->route(label,routeName,paramsArray,icon,userRightOrClosureReturningBool)
        ->route('Change Password','password.change',[],'person','user_edit')
        ->link(name,url,icon,userRightOrClosureReturningBool) 
        ->custom(RocketMenu::item("Google")->link("http://google.com")->hint('Go to Google')->icon('delete')->id('google')->target('_blank')->right(userRightOrClosureReturningBool));

组也是可能的。指定 ->group。这会返回项目。然后指定 ->subMenu(),现在您可以将项目链接到子菜单中。您需要再次使用 Rocket::menu('main') 来添加主菜单项目。

 Rocket::menu('main')
            ->group('Rocket CRUD')
            ->subMenu()
            ->route('CRUD Table','rocket.crud.table');
            
 Rocket::menu('main')->route('Home','home',[]);

前置

有时人们希望前置项目(尤其是在从控制器修改定义在中间件中的菜单时。所有项目函数都可以以 push 开头以前置。

   Rocket::menu('main')->pushRoute('Home','home',[]); //pushLink, pushGroup, pushCustom etc.

前端

此包与 VueBridge 集成,并将菜单在 $store.state.server.rocketMenus 中可用,用于在 RocketVueAppFramework 中与 rocket-framework-menu 一起使用。

<rocket-framework-menu :menu="$store.state.server.rocketMenus&&$store.state.server.rocketMenus.main"></rocket-framework-menu>

面包屑

使用 Rocket::breadcrumbs(),以访问 BreadcrumbsService。

您可以使用以下方法:

@include('rocket::breadcrumbsmenu')

来显示带有菜单项目的菜单图标

或者

@include('rocket::breadcrumbs')

显示经典的面包屑栏。所有这些都仅实现于 Vuetify。您不能同时使用两者,请确保在页面上只使用其中之一。

config/rocketframework.php 中,您可能设置

'breadcrumbs' => [
        'number'=>4, //Number of breadcrumbs to save
        'default'=>'show' //Default behaviour to show or hide breadcrumbs
    ]

在任意页面上,您可以调用:Rocket::breadcrumbs()->show()Rocket::breadcrumbs()->hide() 以离开默认行为。您还可以为面包屑设置一个命名空间以限制系统上的某些部分/会话。例如:Rocket::breadcrumbs()->setBreadcrumbsNamespace($clientid)

原地编辑语言

这使您可以使用 blade 语法 @editabletext(language_line_code)@editablehtml(language_line_code)。如果编辑模式处于活动状态,用户将能够就地编辑文本。这对于面向公众的网站等很有用。

  • 使用 Rocket::activateLanguageEdit()Rocket::deactivateLanguageEdit() 进入编辑模式。
  • 在 app/config/rocketframework.php 中有语言配置 - 主要用于更新路由。默认值在大多数情况下应该适用。 - 但请记住路由保护的中件。默认是 [], 但应该有认证和权限。
  • 它使用了 spatie/laravel-translation-loader 包将其存储在 language_lines 表中,请确保表存在 - 更多信息请查看他们的 readme。您必须在项目中安装此包并覆盖服务提供者,如他们的 readme 中所述。