baykier/nova-radio-field

一个具有切换其他字段可见性的功能的 Laravel Nova 单选按钮字段类型。

0.0.6 2019-09-12 02:31 UTC

This package is auto-updated.

Last update: 2024-09-12 13:22:13 UTC


README

这是一个简单的 nova 字段类型,用于引入具有切换其他字段可见性的单选按钮。

表单视图

index view

索引视图

form view

切换模式

toggle mode

安装

composer require owenmelbz/nova-radio-field

用法

use OwenMelbz\RadioField\RadioButton;

public function fields(Request $request)
{
    return [
        RadioButton::make('Can view skip adverts?')
            ->options([
                0 => 'No',
                1 => ['Yes' => 'This means that users will not have to watch adverts.'],
            ])
            ->default(0) // optional
            ->stack() // optional (required to show hints)
            ->marginBetween() // optional
            ->skipTransformation() // optional
            ->toggle([  // optional
                1 => ['max_skips', 'skip_sponsored'] // will hide max_skips and skip_sponsored when the value is 1
            ])
    ];
}

配置

options()

这接受基本的字符串/整数键值对。数组中的键将被保存到数据库中,而值将被显示。

如果您将数组分配给值,则当使用 stack() 时,它将作为标签和提示的键值对。

hint view

toggle()

这接受一个数组,数组的键代表字段的值。当选择此值时,项目必须始终是一个数组,其中包含您希望隐藏的字段。

例如,如果传递了此数组,当值为 1 时,将隐藏 email 字段,任何其他值将显示所有内容。

toggle([
    1 => ['email']
])

default()

这允许您设置默认单选按钮,否则将不选择任何按钮 - 您只需传入键的值,例如 0。

stack()

默认情况下,单选按钮将并排放置,如果您想要它们在较长的列表中堆叠在下面,请调用 stack() 方法。

marginBetween()

如果您有很多选项需要折叠到两行,您可能想要给它们一些间距。

skipTransformation()

默认情况下,在索引和详情页面上,我们向用户显示标记的值,如果您想显示原始值,则调用 skipTransformation()

许可证

尽情发挥,做你喜欢的事情 :)