Laravel 团队发布了 8.64,带有一个新的 @aware 刀片指令来访问父组件数据,另外还有 v8.x 分支中的最新变化。
🔥 Laravel 8.64.0 今天发布,支持新的“ @aware ” Blade 指令,允许子组件在需要时轻松访问父组件数据。
📚 查看文档中的示例:https ://t.co/QzoQ1juzxQ
— Taylor Otwell 🪐 (@taylorotwell) ,2021 年 10 月 12 日
@aware 刀片指令
新@aware指令可以让子组件在需要时轻松访问父组件数据:
<!-- Example usage -->
<x-menu color="purple">
<x-menu.item>...</x-menu.item>
<x-menu.item>...</x-menu.item>
</x-menu>
<!--
Implementation
/resources/views/components/menu/index.blade.php
-->
@props(['color' => 'gray'])
<ul {{ $attributes->merge(['class' => 'bg-'.$color.'-200']) }}>
{{ $slot }}
</ul>
可以在 Laravel Blade 文档中了解更多关于访问父数据之信息。
Strip Tags Stringable 方法
Craig Anderson贡献了一个stripTags()用作Stringable 的方法,它使用 PHP的strip_tags()作为字符串链处理的一部分。如下:
Str::of('<strong>before<strong><br />after')->stripTags();
语言路径辅助函数
Rodolfo Ruiz贡献了一个lang_path()的helper函数,它能在 Laravel 项目的根目录查找lang目录,也可以在resources目录中查找:
// PROJECT_DIR/resources/lang or PROJECT_DIR/lang
$langPath = lang_path();
// PROJECT_DIR/resources/lang/es or PROJECT_DIR/lang/es
$langPath = lang_path('es');
// PROJECT_DIR/resources/lang/en or PROJECT_DIR/lang/en
$langPath = lang_path('en');
“throw if” HTTP 客户端方法
Ahmad Mayahi贡献了一个throwIf()方法,它接受一个布尔值,如果传递的值是true:
$response
->json()
->throwIf(App::isProduction);
集合“有任意”方法
Craig Anderson贡献了一个hasAny()的方法:如果集合包含任意传递的值,它将返回一个布尔值:
// returns `true`
collect(['first' => 'Hello', 'second' => 'World'])
->hasAny(['first', 'fourth']);
// returns `false`
collect(['first' => 'Hello', 'second' => 'World'])
->hasAny(['third', 'fourth']);
发布版说明
您可以在 GitHub 上查看下面的新功能和更新的完整列表以及8.63.0 和 8.64.0之间的差异。以下发行说明直接来自变更日志:
Laravel v8.64.0添加了如下特性:
本文为 @ 21CTO 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。