monaye / nova-tippy-field

一个 Laravel Nova 字段。

1.0.2 2020-09-24 23:21 UTC

This package is auto-updated.

Last update: 2024-09-08 01:40:21 UTC


README

Laravel Nova 字段,用于在资源索引中显示 Tippy 工具提示。

在详情页中显示与 Laravel Nova Textarea 字段类似。

tooltip-with-icon-and-text

tooltip-with-icon-only

tooltip-with-text-only

tooltip-with-placement

安装

composer require monaye/nova-tippy-field

使用

use Monaye\NovaTippyField\Tippy;
public function fields(Request $request)
{
    return [
        Tippy::make('Body')
            ->text(Str::limit($this->body, 40))
            ->tipContent($this->body)
    ];
}

选项

Nova Tippy Field 提供了各种选项,您可以使用它们来自定义其显示方式,以及传递所有底层 Tippy 实例可用的属性。

text

您可以传递摘要文本或任何您想要显示给用户的可悬停元素文本。还有选项显示图标,请参阅 iconiconUrl 了解详情。

Tippy::make('Body')
    ->text(Str::limit($this->body, 40))
    ->tipContent($this->body)

tipContent

传递您想要在 Tippy 工具提示中显示的文本。如果工具提示内容为空,则不会显示工具提示。

Tippy::make('Body')
    ->text(Str::limit($this->body, 40)),
    ->tipContent($this->body)

iconPath & iconUrl & iconPosition

您可以直接传递您本地 SVG 文件的路径或图标的 URL,或者两者都可以。还可以设置图标位置。

Tippy::make('Body')
    ->text(Str::limit($this->body, 40))
    ->tipContent($this->body)
    ->iconUrl(asset('assets/icons/blue-info.svg'))
    ->iconPath(resource_path('icons/eye.svg'))
    ->iconPosition('right')

placement

工具提示的位置可以放置在不同的位置。所有可用的放置位置都可以在 Tippy Placement Options 中找到。

Tippy::make('Body')
    ->iconUrl(asset('assets/icons/blue-info.svg'))
    ->tipContent($this->body)
    ->placement('bottom')

tippyOptions

您可以传递任何在 Tippy JS Props 中可用的属性。请注意,某些属性可能与 nova 不兼容。

Tippy::make('Body')
    ->text(Str::limit($this->body, 40))
    ->tipContent($this->body)
    ->tippyOptions(['arrow' => false, 'placement' => 'bottom'])

shouldShow

类似于 Laravel Nova TextArea 字段,在详情屏幕上,默认情况下,Nova Tippy Field 将隐藏内容,只有在您点击 显示内容 时才会显示。您始终可以在详情屏幕上显示内容。

Tippy::make('Body')
    ->text(Str::limit($this->body, 40))
    ->tipContent($this->body)
    ->shouldShow()

作者

希望您觉得它有用。请随时提供反馈。

在推特上关注我: @winmonaye