bakgul/laravel-resource-creator
此包旨在创建视图、样式和JavaScript文件。它可以创建所有模板并连接文件以减少重复性工作。本首次发布涵盖了Blade、Vuejs(视图、vue-router、vuex、pinia)和Sass。
Requires
- php: ^8.1
- bakgul/command-evaluator: ^4.0
- bakgul/file-content: ^4.0
- bakgul/file-history: ^4.0
- bakgul/kernel: ^4.0
- bakgul/laravel-helpers: ^1.0
README
此包旨在创建视图、样式和JavaScript文件。它可以创建所有模板并连接文件以减少重复性工作。本首次发布涵盖了Blade、Vuejs(视图、vue-router、vuex、pinia)和Sass。
免责声明
它应该适用于生产环境,但尚未充分测试。由于此包将操作您的文件和文件夹,您应谨慎使用。请始终使用版本控制,并确保您有文件历史记录以便能够回滚更改。
v3 更新指南
- 转到
vendor/bakgul/kernel/config/apps.php
文件,查看更改。每个应用下都有一个名为routes
的新键。将此新结构带到您配置文件夹中的packagify.php文件中。 - 将
'bundler' => 'vite' or 'mix'
添加到配置文件夹中的packagify.php文件“主从内核”部分下的主数组中。
安装
如果您已安装Packagified Laravel,您应该已经拥有了此包。所以请跳过安装。
composer require bakgul/laravel-resource-creator --dev
注意:此包不会安装Laravel File Creator,但您需要它来创建Blade组件和Livewire类。
接下来,您需要通过执行以下命令发布设置。这样做,您将在配置文件夹中有一个名为packagify.php的新文件。资源类型在“resources”数组中。文件的主体设置在“files”数组下,键为“view, css, js”。那些数组中的注释块提供了相当深入的解释。
sail artisan packagify:publish-config
发布存根后,您可以根据需要更新存根文件。删除未编辑的文件是安全的。
sail artisan packagify:publish-stub
命令签名
create:resource {name} {type} {package?} {app?} {--p|parent=} {--c|class} {--t|taskless} {--f|force}
参数
-
name: subs/name:task
-
subs:当您需要一个更深层次的文件结构时,您可以指定子文件夹,如sub1/sub2/sub3。
-
name:不带任何后缀的文件名。
-
task:这是可选的。
- exist:您可以通过点分隔的方式设置一个或多个任务,如“users:index”或“users:index.store.update”。任务应该是文件类型及其配对和全局任务列表(见config/packagify.php中的tasks数组)。否则,它将被忽略。
- missing:如果基础文件类型有任务,将为每个任务生成一个单独的文件。否则,将生成一个文件。
-
-
type: name:variation:role
-
name:它应该是'view, css, js'之一。它将确定基于应用程序类型将生成哪种类型的文件。例如,如果您为admin应用创建文件,并且admin应用类型是'vue',那么视图文件将是Vue,js文件将是'store'和'route'文件。这些类型的设置在'packagify.php'的'resources'数组中。
-
variation:这是必需的,应该是指定文件类型的变体之一。
-
role:这是可选的。
- exist:它应该是roles数组中的项目之一。
- missing:它将是默认的无角色。
-
-
包:在独立 Laravel 或独立包工作时不使用。如果您没有指定有效的包名,文件将生成在 resources 文件夹中。
-
应用:为了为特定应用创建文件,您必须指定应用名称。设置在 packagify.php 文件中的 apps 数组中。
选项
-
父级:当您创建一个区域时,您需要告诉包含创建区域的页面名称。
-
类:当您创建 Blade 组件时,您需要在命令中添加 "-c" 或 "--class" 以创建组件的类。
-
无任务:除非注释中有任务,否则每个任务将生成一个独立的区域文件。但有时,您可能想要创建一个没有任务的单一文件。在这种情况下,您需要将 '-t' 或 '--taskless' 添加到您的命令中。这将取消默认的任务爆炸行为。
-
强制:通常,如果文件已存在,则不会重新生成文件。如果传递了此选项,则无论如何都会创建新文件。
包化 Laravel
包含此包的主包可以在这里找到:包化 Laravel