linuxstreet/wire-content-loader
Composer 安装命令:
composer require linuxstreet/wire-content-loader
包简介
Flexible way of loading Livewire component or Blade view anywhere on the page.
README 文档
README
Installation
Requires:
Via Composer:
composer require linuxstreet/wire-content-loader
Usage
Seamlessly integrate dynamic content into any part of your web page. By specifying a unique ID for each loader, you can ensure accurate and independent loading of content within multiple containers. This feature is particularly valuable for Single-Page Applications (SPAs) or when you need to dynamically load components for a more interactive user experience.
Place content loader with default ID
<livewire:content-loader/>
Set content loader ID to 'menu'
<livewire:content-loader id="menu"/>
Set ID to 'sidebar' and initially load Blade view into it.
<livewire:content-loader id="sidebar" view="my-blade-view"/>
Set ID to 'footer' and initially load Livewire component into it.
<livewire:content-loader id="footer" component="my-livewire-component"/>
Content loader is listening for 'content-load' browser event.
AlpineJS @click example:
<button x-data @click.throttle="$dispatch('content-load', [=PARAMS])">Show</button>
Params:
Mandatory:
- component: [string] - Name of the Livewire component to be loaded
- OR
- view: [string] - Name of the Blade view to be loaded
NOTE: If neither component or view is provided, Exception will be thrown.
Optional:
- forceReload: [true|false] - Use only when loading Livewire component. Forces component to re-render if called multiple times. (default: false)
- spinner: [true|false] - Enable/Disable loading spinner inside the loader while content is loading. (default: true)
- spinnerClass: [string] - Pass additional CSS classes to the loading spinner (default: '')
- target: [string] - Use only if multiple content loaders present on page. (default: 'main')
- hideWhileLoading: [true|false] - Show/hide content while re-loading the component.(default: false)
- params: [array] - Pass additional params to Component/View (default: [])
Examples:
Provide either 'component' or 'view' options like this:
{ component: 'livewire_component' }
{ view: 'blade_view' }
Here are some examples with optional params:
{ component: 'my-component', forceReload: true }
{ component: 'my-component', forceReload: true, hideWhileLoading: false }
{ component: 'my-component', forceReload: false, target: 'sidebar }
{ view: 'my-view', target: 'footer, spinner: false }
{ view: 'my-view', target: 'footer, spinner: false, params: { id: 5 } }
Examples with HTML button element using AlpineJS:
<button x-data @click.throttle="$dispatch('content-load', [{ component: 'my-component', forceReload: true }] )">Show</button> <button x-data @click.throttle="$dispatch('content-load', [{ component: 'my-component', forceReload: true, hideWhileLoading: false }] )">Show</button> <button x-data @click.throttle="$dispatch('content-load', [{ component: 'my-component', forceReload: true, params: { id: 1 } }] )">Show</button>
Change log
Please see the changelog for more information on what has changed recently.
Layout Customisation
This package uses TailwindCSS classes. If you want to customize the layout for different CSS framework use:
php artisan vendor:publish --provider="Linuxstreet\WireContentLoader\WireContentLoaderServiceProvider"
Testing
./vendor/bin/pest
Contributing
Please see contributing.md for details.
Security
If you discover any security related issues, please email author email instead of using the issue tracker.
Credits
- Igor Jovanovic
License
Please see the license file for more information.
linuxstreet/wire-content-loader 适用场景与选型建议
linuxstreet/wire-content-loader 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 7 次下载、GitHub Stars 达 1, 最近一次更新时间为 2024 年 12 月 12 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「php」 「content」 「laravel」 「livewire」 「alpinejs」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 linuxstreet/wire-content-loader 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 linuxstreet/wire-content-loader 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 linuxstreet/wire-content-loader 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
A block that displays featured content - large image, title, description and link.
TYPO3 CMS extension to create gallery content element with preset crop ratios and pagination
Portal Options Links
ZRCMS - Content management for version tracking and content
H5P Core functionality in PHP
System texts can be set as articles
统计信息
- 总下载量: 7
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 17
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-12-12