beatgeb / terrific-composer-bundle
轻松开发基于terrific概念的前端
Requires
- symfony/form: 2.8.*
- symfony/framework-bundle: 2.8.*
- symfony/validator: 2.8.*
Requires (Dev)
- symfony/filesystem: 2.8.*
- symfony/finder: 2.8.*
- symfony/yaml: 2.8.*
This package is not auto-updated.
Last update: 2024-09-14 19:31:15 UTC
README
TerrificComposer 扩展包使得开发基于 Terrific 概念 的前端变得简单。它提供了一些辅助工具和工具来简化你的前端开发。
TerrificComposer 扩展包依赖于 TerrificCoreBundle。请按照 这里 的说明安装 TerrificCoreBundle。
安装
可以通过 Composer 安装 TerrificComposerBundle。只需将以下内容添加到你的 composer.json 文件中
// composer.json
{
// ...
require: {
// ...
"brunschgi/terrific-composer-bundle": "dev-master"
}
}
注意:请将上面的代码片段中的 dev-master 替换为最新的稳定分支,例如 1.0.*。请检查 Github 上的标签以确定哪些版本可用。然后,你可以通过在 composer.json 文件所在目录中运行 Composer 的 update 命令来安装新的依赖项
php composer.phar update
现在,Composer 将自动下载所有必要的文件,并为你安装它们。剩下的只是更新你的 AppKernel.php 文件,并注册新的扩展包
// in AppKernel::registerBundles()
public function registerBundles()
{
return array(
// ...
new Terrific\ComposerBundle\TerrificComposerBundle(),
);
}
TerrificComposer 为每个 Terrific 模块创建一个扩展包。为了自动注册它们,扩展 app/AppKernel.php
// register all terrific modules
$dir = __DIR__.'/../src/Terrific/Module/';
$finder = new Finder();
$finder->directories()->in($dir)->depth('== 0');
foreach ($finder as $file) {
$filename = $file->getFilename();
$module = 'Terrific\Module\\'.$filename.'\TerrificModule'.$filename;
$bundles[] = new $module();
}
在 routing.yml 中导入路由定义
# app/config/routing.yml
TerrificComposerBundle:
resource: "@TerrificComposerBundle/Controller/"
type: annotation
prefix: /terrific/composer
在 app/config/config.yml 和 app/config/config_dev.yml 中启用扩展包的配置
# app/config/config.yml
terrific_composer:
composition_bundles: [@TerrificComposition] # optional|default=@TerrificComposition – the bundles where the controllers for your frontend lie
module_layout: @TerrificComposition::base.html.twig # optional|default=@TerrificComposition::base.html.twig – the layout to take for the separate module view
module_template: /path/to/your/module/template # optional|default=/path/to/TerrificComposerBundle/Template/Module -> extend or add additional module resources (ie. README.md)
# app/config/config_dev.yml
terrific_composer:
toolbar: true # enables the composer toolbar in the dev environment
使用方法
要查看 TerrificComposerBundle 的实际效果,请下载 Terrific Composer 发行版 并尝试其中的示例。有关 Terrific 概念的更多信息,请访问 http://terrifically.org
之后,下面的内容应该很简单了 ;-)
Terrific Composer 工具栏
工具栏提供了一些有用的助手,帮助你简化前端开发。
模块/皮肤创建
在 /src/Terrific/Module/ 下创建模块扩展包(带或不带皮肤)。
注意:如果您不使用 Terrific Composer 发行版,您必须手动在 app/AppKernel.php 中注册创建的模块
生成的模块结构包含在 Terrific 风格下的 LESS/JavaScript 文件骨架,这样您就可以立即开始。
打开资源
打开对话框为您提供对模块和页面的快速访问。通过点击模块,您可以将其与其他页面内容隔离来实现和测试它。此外,您还可以尝试不同的宽度、模板和皮肤。
检查模式
检查模式显示当前页面使用的模块。
Composer() 注解
该扩展包为您的控制器提供了 Composer() 注解
<?php namespace Terrific\Composition\Controller; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Terrific\ComposerBundle\Annotation\Composer; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template; class DefaultController extends Controller { /** * @Composer("Welcome") * @Route("/", name="home") * @Template() */ public function indexAction() { return array(); } /** * @Composer("Examples Overview") * @Route("/examples", name="examples") * @Template() */ public function examplesAction() { return array(); } }
Composer 注解用于在打开对话框中添加有意义的页面名称。
就这样……享受吧!


