c975l/toolbar-bundle

用于为975L.com开发的产品添加通用工具栏的包

v3.0.1 2024-01-22 16:44 UTC

README

ToolbarBundle的功能如下:

  • 显示工具栏,
  • 包含通用工具,
  • 与您的网页设计集成。

此Bundle依赖于BootstrapFontawesome的使用。

ToolbarBundle官方网站.

ToolbarBundle API文档.

包安装

步骤1:下载包

使用Composer安装库

    composer require c975l/toolbar-bundle

步骤2:启用包

然后,通过将它们添加到项目中app/AppKernel.php文件中注册的包列表中启用包

<?php
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = [
            // ...
            new c975L\ToolbarBundle\c975LToolbarBundle(),
        ];
    }
}

使用方法

ToolbarBundle使用Fontawesome作为图标,因此您必须从您的网页中加载它。您可以使用c975L/IncludeLibraryBundle,它将允许您简单地添加{{ inc_lib('fontawesome', 'css') }}到您的layout.html.twig中,但如果您使用c975L/SiteBundle,它已经在stylesheets部分中存在了 :).

创建按钮 - toolbar_button()

您可以通过调用以下代码在Twig模板中创建按钮

{{ toolbar_button(path('ROUTE', { 'VARIABLE': object.PROPERTY }), 'BUTTON_NAME', 'SIZE[lg|md|sm|xs](default md)', 'USE_ANOTHER_LABEL', 'USE_ANOTHER_STYLE', 'COLOR') }}

创建带文本的按钮 - toolbar_button_text()

您可以通过调用以下代码在Twig模板中创建带文本的按钮(方括号中的数据为可选)

{{ toolbar_button_text(path('ROUTE', { 'VARIABLE': object.PROPERTY }), 'BUTTON_NAME', 'SIZE[lg|md|sm|xs](default md)', 'ICON_DISPLAY[true|false](default true)', 'LOCATION[right|bottom|left|top]', 'USE_ANOTHER_LABEL', 'USE_ANOTHER_STYLE', 'COLOR') }}

创建工具栏 - toolbar_display

要创建工具栏,您需要创建一个模板,其中定义了工具。在此模板内部,您可以使用Twig扩展toolbar_button()toolbar_button_text()来定义按钮,如下所示

    {# You can add some test and use the object sent #}
    {% if type === 'YOUR_TYPE' %}
        {# You can pass an object and use it there, with the name 'object' #}
        {{ toolbar_button(path('ROUTE', { 'VARIABLE': object.PROPERTY }), 'BUTTON_NAME', 'SIZE[lg|md|sm|xs](default md)', 'USE_ANOTHER_LABEL', 'USE_ANOTHER_STYLE') }}
        {{ toolbar_button_text(path('ROUTE', { 'VARIABLE': object.PROPERTY }), 'BUTTON_NAME', 'SIZE[lg|md|sm|xs](default md)', 'ICON_DISPLAY[true|false](default true)', 'LOCATION[right|bottom|left|top]') }}
    {% endif %}

然后在您的模板中简单地调用Twig扩展{{ toolbar_display('TOOLS_TEMPLATE', 'TYPE', 'SIZE[lg|md|sm|xs]', OBJECT_IF_NEEDED, 'ALIGNMENT[left|center|right](default center)') }}

您还可以在样式表中指定工具栏的CSS样式

.toolbar {
    margin-bottom: 2em;
}

注意,Twig扩展ToolbarDashboards是针对975L开发的产品特定的,因为它将显示一个下拉菜单链接到其他产品。

从控制器调用

如果您需要从控制器中调用它,可以使用以下代码

<?php
//...
    $tools = $this->renderView('LOCATION_OF_YOUR_TEMPLATE_DEFINED_ABOVE', array(
        'type' => 'YOUR_TYPE',
        'object' => YOUR_OBJECT_IF_NEEDED,
    ));
    $toolbar = $this->renderView('@c975LToolbar/toolbar.html.twig', array(
        'tools' => $tools,
        'size' => 'YOUR_SIZE',
        'alignment' => 'YOUR_ALIGNMENT',
    ));

如果这个项目帮助您缩短开发时间,您可以通过顶部的“赞助”按钮赞助我 :)