一个 laravel 7+ 的视图组件,表单域组件

Laravel Form Item Component

这是一个 Laravel 视图组件,可以让开发者在 Laravel 视图中便捷地嵌入各种表单域,有文本输入框、单选框、多选框、下拉列表框、数字输入框、
时间选择器、日期选择器、滑块、开关以及强大的级联选择器。

您可以在已有的 form 表单中嵌入上面提到的任意一个表单域,当你提交表单的时候,该表单域的值会伴随着已有的表单域的值一起提交到 action 设置
的链接中。

当你的表单在编辑一条数据的时候,你也可以方便地将已有的值传递给这个表单域,当你不做修改直接提交表单的时候,该值会原样提交到 action 链接中

使用案例

让我们以单选框为例来介绍以下,首先我们需要在 php 文件中构造选项数据

Route::get('demo', function() {
  return view('demo-view', [
    'radio1_option' => [ 
       [ 'value' => 11, 'text' => '西瓜'],
       [ 'value' => 22, 'text'  => '苹果'],
       [ 'value' => 23, 'text'  => '香蕉',]
     ],
  ]);
});

在视图中有两种情况,一种是新建数据,一种是编辑数据,让我们分别介绍一下他们的区别

新建

<form>
 <!-- 原生写法 --> 
 @foreach($radio1_option as $item)
    <input type="radio" name="radio1" value="{{$item['value']}}" /> {{$item['text']}} 
 @endforeach
 <!-- 使用组件 ---> 
 <x-input-radio name="radio1" :options="$radio1_option" ></x-input-radio>
</form>

编辑

<form>
 <!-- 原生写法 --> 
 @foreach($radio1_option as $item)
    <input type="radio" name="radio1" value="{{$item['value']}}" {{$item['value']==$form['radio1'] ? 'checked' : ''}}/> {{$item['text']}} 
@endforeach
 <!-- 使用组件 ---> 
    <x-input-radio name="radio1" :options="$radio1_option" :value="$form['radio1']"></x-input-radio>
</form>

关于测试

在项目中,我对所有的代码进行了单元测试,以及集成的浏览器测试,第三方的测试覆盖率检测结果是 93%。

本扩展包现在已经支持 php 7.3 ,7.4 8.0 版本 laravel 的 7.x ,8.x 版本

本扩展包是支持 语义化版本控制2.0 的,由于目前发布的版本是 0.1.2, 你在使用中, 可以固定版本号为 ^0.1, 以后如果该版本有问题需要修复,会在 0.1.1 这种小版本号中修复,0.2.x 版本中会增加新特性支持,但是 可能 会有不兼容的修改,请知晓,版本差异会在文档中作出说明

查看github 可以帮开源项目贡献代码
查看文档 了解更多

大多数知识,不需要我们记住,只需要认知即可
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 12

正好需要。非常感谢。

4年前 评论

file 无法安装。

4年前 评论
tu6ge-php (楼主) 4年前
tu6ge-php (楼主) 4年前

好。谢谢您。扩展很实用。我会到处推荐。

4年前 评论
tu6ge-php (楼主) 4年前

这个扩展好久没更新了。Element-UI的表单组件都可以加进来吗?

3年前 评论
tu6ge-php (楼主) 3年前
shebaoting (作者) 3年前
tu6ge-php (楼主) 3年前

另外,兄弟,您的这个扩展可否设置个开源协议呢?

3年前 评论
tu6ge-php (楼主) 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!