owenmelbz / laravel-stubs
轻松存储项目中的模板,以便在需要时重复使用。
Requires (Dev)
- phpunit/phpunit: ~4.5
README
我们经常在创建新文件时重复相同的模板,例如javascript组件、blade模板等。
本包旨在通过借鉴其他 make:
命令,使您能够在项目中构建总是重复的内容,从而帮助您节省大脑细胞(例如,像披萨这样的重要事物)。
安装
1- 使用composer安装 composer require owenmelbz/laravel-stubs
。
2- 包应该使用laravel的新自动发现功能,如果不这样,您可以手动注册服务提供程序 - 通常在app.php
的提供程序数组中完成,例如OwenMelbz\LaravelStubs\StubsServiceProvider::class
。
3- 如果您要修改默认模板,或添加自己的模板,您需要使用php artisan vendor:publish --tag=stubs-config
来发布配置,这将生成config/template_stubs.php
。
用法
运行php artisan make:a {stub} {name}
,这将根据定义的模板生成新文件。
{name}
将成为文件名,通常也是类/组件名,其中在文件中使用默认的@placeholder
标记。
默认模板
您可以从配置文件中查看默认模板的完整列表 -> https://github.com/OwenMelbz/Laravel-Stubs/blob/master/src/config/template_stubs.php
修改现有模板
如果您想修改默认模板,您可以有两种方式。
模板按瀑布式加载 - 因此,如果您在resources/stubs
文件夹中有一个自己的文件,我们将使用此文件。
您可以使用配置中stub
键中定义的相同文件名,例如vue-component.js
,我们将使用该文件。或者,您可以创建一个任何名称的文件,并更改已发布配置文件中的stub
键。
如果您想修改包中的所有模板,您可以使用php artisan vendor:publish --tag=stubs-stubs
一次性发布所有模板,这将它们全部放入您的resources/stubs
文件夹。
添加自定义模板
您可以选择发布默认配置并修改它,或者创建自己的template_stubs.php
- 如果您想,您甚至可以使用php artisan make:a config template_stubs
开始添加自己的。
创建新模板至少需要模板文件、输出路径和名称。以下是一个示例结构
'my-stub' => [ 'stub' => 'my-stub.php', 'output_path' => resource_path('some-folder') ]
请注意,输出文件的文件扩展名将与模板文件的文件扩展名相匹配。因此,在这种情况下,我们不建议使用.stub
作为文件扩展名。
在生成过程中,我们将解析一个名为@placeholder
的标记,如果此标记在模板中,它将被替换为您传递给命令的名称。例如
此命令artisan make:a vue my-component
将看到以下文件
Vue.component('@placeholder', { });
并生成包含以下内容的my-component.js
Vue.component('my-component', { });
如果您想将@placeholder
更改为其他内容,请在配置中的模板定义中添加placeholder => '@myothername'
。
贡献社区占位符
请随时提交拉取请求以添加自定义占位符,确保没有命名冲突,并尽可能保持简单。
通常我们遵循PSR-2风格编写PHP文件,我可能会修改代码风格以使其与提交的占位符保持一致。
注意
这是一个非常新的包,在野外尚未被大量使用,所以如果你遇到错误,请多包涵,尽可能添加PR来修复问题,这将非常感激。
谢谢 :D