brunschgi / terrific-composer-bundle
简化了基于terrific概念的frontends开发
Requires
- symfony/form: 2.2.*
- symfony/framework-bundle: 2.2.*
- symfony/validator: 2.2.*
Requires (Dev)
- symfony/console: 2.2.*
- symfony/filesystem: 2.2.*
- symfony/finder: 2.2.*
- symfony/yaml: 2.2.*
This package is not auto-updated.
Last update: 2024-09-28 12:04:08 UTC
README
TerrificComposer包简化了基于Terrific Concept的前端开发。它提供了一些辅助工具,以简化你的前端开发。
TerrificComposer包依赖于TerrificCoreBundle。请按照这里的说明安装TerrificCoreBundle。
安装
TerrificComposerBundle可以通过Composer方便地安装。只需将以下内容添加到你的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 Distribution并尝试其中的示例。有关Terrific Concept的更多信息,请访问http://terrifically.org
之后,以下步骤应该相当直观 ;-)
Terrific Composer工具栏
工具栏提供了一些有用的助手,有助于简化你的前端开发。
模块/皮肤创建
在/src/Terrific/Module/下创建模块包(带或不带皮肤)。
注意:如果你不使用Terrific Composer Distribution,你必须手动在app/AppKernel.php
中注册创建的模块
生成的模块结构包含了在Terrific方式下的LESS/JavaScript文件的基本结构,因此你可以立即开始。
公开资源
打开对话框为您提供快速访问模块和页面。通过点击模块,您可以将其独立于页面其余部分进行实现和测试。此外,您可以尝试不同的宽度、模板和皮肤。
检查模式
检查模式显示了当前页面上使用的模块。
The 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注解用于丰富打开对话框中的有意义的页面名称。
这就完了……享受吧!