在Laravel 5.7中更改成功,错误和原色的最佳方法是什么?
我通过php artisan vendor:publish --tag=laravel-notifications
拥有email.blade.php
...
{{-- Action Button --}}
@isset($actionText)
<?php
switch ($level) {
case 'success':
case 'error':
$color = $level;
break;
default:
$color = 'primary';
}
?>
@component('mail::button', ['url' => $actionUrl, 'color' => $color])
...
模板使用'success'
,'error'
和'primary'
来为按钮着色,但是在哪里可以更改它们的值?
答案 0 :(得分:3)
只需运行php artisan vendor:publish --tag=laravel-mail
,这将在您的views目录中创建vendor / html文件夹。
然后编辑/resources/views/vendor/mail/html/themes/default.css
文件并更改.button-primary
类。
此外,如果CSS更改不够,您还可以访问每个邮件通知组件的所有HTML代码。
答案 1 :(得分:3)
这是最好的,正确的方法
https://laracasts.com/series/whats-new-in-laravel-5-4/episodes/7
(我将提取)-运行
php artisan vendor:publish --tag=laravel-mail, this will create vendors/html folder in your views directory.
然后在
创建一个新的主题文件 /resources/views/vendor/mail/html/themes/my_theme.css
然后进入
config/mail.php
设置新主题
'theme' => 'my_theme',
'paths' => [
resource_path('views/vendor/mail'),
],
],
现在您可以设置自己的CSS并创建任何新的按钮颜色。
@component('mail::button', ['url' => $url, 'color' => 'success'])
View Group
@endcomponent
答案 2 :(得分:0)
也许最好的方法是创建ColorHelper类?
class ColorHelper {
public static function level($level) {
if(method_exists ( $this , $level )) {
call_user_func($level);
} else {
return false;
}
}
public static function success() {
return '#00FF00';
}
public static function error() {
return '#FF0000';
}
}
答案 3 :(得分:0)
我相信Laravel使用bootstrap 4,然后我猜想它的工作原理相同,因此'primary'属性为按钮赋予了颜色/样式,下面是一些示例: https://getbootstrap.com/docs/4.0/components/buttons/
如果您希望按钮默认为红色,则可以:
default: $color = 'danger';