monaye/simple-link-button 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

monaye/simple-link-button

最新稳定版本:1.0.3

Composer 安装命令:

composer require monaye/simple-link-button

包简介

A Laravel Nova field.

README 文档

README

Inspired by Nova Button (https://github.com/dillingham/nova-button) but only focus on displaying HTML Links and allowing all attributes to be passed.

screenshot of nova simple link button

Installation

composer require monaye/simple-link-button

Usage

use Monaye\SimpleLinkButton\SimpleLinkButton;
public function fields(Request $request) { return [ SimpleLinkButton::make('Google', 'https://google.com'), ]; }

Type & Style

Default type of the button is fill & default style is primary. type and style can be mismatch.

SimpleLinkButton::make('Google', 'https://google.com')->type('fill'), SimpleLinkButton::make('Google', 'https://google.com')->type('outline'), SimpleLinkButton::make('Google', 'https://google.com')->type('link'),
SimpleLinkButton::make('Google', 'https://google.com')->style('primary'), SimpleLinkButton::make('Google', 'https://google.com')->style('success'), SimpleLinkButton::make('Google', 'https://google.com')->style('warning'), SimpleLinkButton::make('Google', 'https://google.com')->style('danger'), SimpleLinkButton::make('Google', 'https://google.com')->style('info'), SimpleLinkButton::make('Google', 'https://google.com')->style('grey'),

Mismatch type and style.

SimpleLinkButton::make('Google', 'https://google.com') ->type('outline') // fill, outline, link ->style('danger'), // primary, success, warning, danger, info, grey

Custom Type & Style

All the style class is defined in the configuration file.

php artisan vendor:publish --tag=simple-link-button
// config/simple-link-button.php 'buttons' => [ 'fill' => [ // Fill 'primary' => 'dim btn btn-default btn-primary', 'success' => 'dim btn btn-default bg-success text-white', 'warning' => 'dim btn btn-default bg-warning text-white', 'danger' => 'dim btn btn-default bg-danger text-white', 'info' => 'dim btn btn-default bg-info text-white', 'grey' => 'dim btn btn-default bg-60 text-white', ], 'outline' => [ // Outline 'primary' => 'dim btn btn-default border border-primary text-primary', 'success' => 'dim btn btn-default border border-success text-success', 'warning' => 'dim btn btn-default border border-warning text-warning ', 'danger' => 'dim btn btn-default border border-danger text-danger ', 'info' => 'dim btn btn-default border border-info text-info ', 'grey' => 'dim btn btn-default border border-60 text-80 ', ], 'link' => [ // Link 'primary' => 'dim btn btn-link text-primary', 'success' => 'dim btn btn-link text-success', 'warning' => 'dim btn btn-link text-warning', 'danger' => 'dim btn btn-link text-danger', 'info' => 'dim btn btn-link text-info', 'grey' => 'dim btn btn-link text-80', ], ]

Just add additional config to define your own type and style

// config/simple-link-button.php 'buttons' => [ ... 'myown' => [ 'primary' => 'dim btn btn-default bg-90 text-white', 'neutral' => 'dim btn btn-default bg-30 text-70', ]
 SimpleLinkButton::make('Google', 'https://google.com') ->type('myown'), // default to primary style SimpleLinkButton::make('Google', 'https://google.com') ->type('myown') ->style('neutral'),

Visiblity

You can show or hide the button by passing boolean to the visible method.

SimpleLinkButton::make('Google', 'https://google.com')->visible($this->is_active == false), SimpleLinkButton::make('Google', 'https://google.com')->visible($this->is_active == true),

Classes

If you need to dynamically pass the class, pass class name to the classes method. Notes: classes method will overwrite the type and style classes.

SimpleLinkButton::make('Google', 'https://google.com')->classes('my-own-class second-class'), // to add additional class you will need to combine with pre config classes // get classes from config file out slide of $defaultClasses = Arr::get(config('simple-link-button'), "buttons.fill.primary") // add additional class SimpleLinkButton::make('Google', 'https://google.com')->classes("myClass ${defaultClass}"),

Attributes

You are free to pass any attributes to the HTML Link by passing key => value array to the attributes method.

SimpleLinkButton::make('Google', 'https://google.com')->attributes(['target' => '_blank']), SimpleLinkButton::make('Download Pic', '/my-image.png')->attributes(['download'=>'download-image.png', 'title' => 'Download Image']),

Author

Hope you find it useful. Feel free to reach out with feedback.

Follow me on twitter: @winmonaye

Special Thanks

This package is heavily influenced by the https://github.com/dillingham/nova-button. If you need more robust feature please checkout the original package.

统计信息

  • 总下载量: 15.98k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 8
  • 点击次数: 2
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 8
  • Watchers: 1
  • Forks: 2
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-04

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固