2017 © Pedro Peláez
 

library zfheadbuild

Zend Framework 2/3 module for assests builds

image

feliperamaral/zfheadbuild

Zend Framework 2/3 module for assests builds

  • Wednesday, April 5, 2017
  • by feliperamaral
  • Repository
  • 1 Watchers
  • 1 Stars
  • 86 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 1 Open issues
  • 8 Versions
  • 0 % Grown

The README.md

Zend Framework 2/3 Head*Build Module

Como funciona:

Hoje em dia é muito utilizado automatizadores de tarefas para front-end como Grunt, Gulp e etc., (*1)

Geralmente é utilizado packages para gerar builds do CSS e JS como build/js/app-9783118bf8.js, (*2)

Então esse modulo é para justamente recupear essa versão de build e adicionar na sua view como:, (*3)

VIEW.phtml:, (*4)

<?php
echo $this->headScript()->prependFileBuild('js/app.js');

HTML:, (*5)


Instalação

  1. Adicione no composer.json do seu projeto
 "require" : {
        "feliperamaral/zfheadbuild" : "1.*@stable"
    }
  1. Rode o seguinte comando
$ php composer.phar update

Após a instalação

Opção 1 - Instalar como modulo

  1. Adicione o modulo no seu application.config.php
<?php
return array(
    'modules' => array(
        //...
        'HeadBuild'
    ),
    //...
);

Opção 2 - Adicione diretamente no seu modulo (recomendado)

Dessa forma não é preciso inicializar um modulo inteiro, (*6)

  1. Adicione o seguinte helper no seu [modulo]/config/module.config.php
<?php
return array(
    //...
    'view_helpers' => array(
        //..
        'invokables' => array(
            //...
            'headlink' => 'HeadBuild\View\Helper\HeadLink',
            'headscript' => 'HeadBuild\View\Helper\HeadScript',
        ),
    ),
);

Configurações

Você pode configurar manualmente os caminhos para a sua pasta de build, (*7)

Duas variáveis estão incluídas no processo, que são: public_path e manifest_file, (*8)

O valor padrão de manifest_file é build\rev-manifest.json O valor padrão de public_path é calculado automaticamente com base no seu index.php (ou qualquer arquivo que o seu Rewrite aponte), (*9)

Alterar configurações padrão

No seu arquivo de configuração [modulo]/config/module.config.php, adicione o seguinte:, (*10)

<?php

return [
    'headbuild' => [
        'public_path' => 'caminho/para/meu/public/',
        'manifest_file' => 'build-path\arquivo-json.json'
    ],

Como usar

É adicionado dinâmicamente a versão ...Build([...]) à todos os métodos dos helpers HeadLink e HeadScript, (*11)

Na sua view:, (*12)

VIEW.phtml:, (*13)

<?php
echo $this->headLink()
    ->appendStylesheetBuild('css/app.css')
    ->appendStylesheetBuild($this->basePath('css/lib.css'));
echo $this->headScript()
    ->prependFileBuild('js/app.js')
    ->appendFile($this->basePath('js/lib.js'));

HTML:, (*14)

<link href="/my-application/build/css/app-f7bf2c660c.css" media="screen" rel="stylesheet" type="text/css">
<link href="/my-application/css/lib.css" media="screen" rel="stylesheet" type="text/css">



Observe que não é preciso usar o $this->basePath(...) no método de build

Observe também que os outros métodos continuam funcionando normalmente

Todos os métodos possuem os mesmo parâmetros dos métodos equivalentes, (*15)

Métodos HeadScript


$this->headScript()->appendFile([...]); $this->headScript()->appendFileBuild([...]); $this->headScript()->offsetSetFile([...]); $this->headScript()->offsetSetFileBuild([...]); $this->headScript()->prependFile([...]); $this->headScript()->prependFileBuild([...]); $this->headScript()->setFile([...]); $this->headScript()->setFileBuild([...]); $this->headScript()->appendScript([...]); $this->headScript()->appendScriptBuild([...]); $this->headScript()->offsetSetScript([...]); $this->headScript()->offsetSetScriptBuild([...]); $this->headScript()->prependScript([...]); $this->headScript()->prependScriptBuild([...]);

$this->headLink()->appendStylesheet([...]); $this->headLink()->appendStylesheetBuild([...]); $this->headLink()->offsetSetStylesheet([...]); $this->headLink()->offsetSetStylesheetBuild([...]); $this->headLink()->prependStylesheet([...]); $this->headLink()->prependStylesheetBuild([...]); $this->headLink()->setStylesheet([...]); $this->headLink()->setStylesheetBuild([...]); $this->headLink()->appendAlternate([...]); $this->headLink()->appendAlternateBuild([...]); $this->headLink()->offsetSetAlternate([...]); $this->headLink()->offsetSetAlternateBuild([...]); $this->headLink()->prependAlternate([...]); $this->headLink()->prependAlternateBuild([...]); $this->headLink()->setAlternate([...]); $this->headLink()->setAlternateBuild([...]);

```, (*16)

The Versions

05/04 2017

dev-master

9999999-dev

Zend Framework 2/3 module for assests builds

  Sources   Download

BSD-3-Clause

The Requires

 

by Felipe Amaral

05/04 2017

v1.1.1

1.1.1.0

Zend Framework 2/3 module for assests builds

  Sources   Download

BSD-3-Clause

The Requires

 

by Felipe Amaral

24/10 2016

1.1.0

1.1.0.0

Zend Framework 2/3 module for assests builds

  Sources   Download

BSD-3-Clause

The Requires

 

by Felipe Amaral

08/12 2015

1.0.4

1.0.4.0

Zend Framework 2 module for assests builds

  Sources   Download

BSD-3-Clause

The Requires

 

by Felipe Amaral

06/12 2015

1.0.3

1.0.3.0

Zend Framework 2 module for assests builds

  Sources   Download

BSD-3-Clause

The Requires

 

by Felipe Amaral

04/12 2015

1.0.2

1.0.2.0

Zend Framework 2 module for assests builds

  Sources   Download

BSD-3-Clause

The Requires

 

by Felipe Amaral

27/09 2015

1.0.1

1.0.1.0

Zend Framework 2 module for assests builds

  Sources   Download

BSD-3-Clause

The Requires

 

by Felipe Amaral

26/09 2015

1.0.0

1.0.0.0

Zend Framework 2 module for assests builds

  Sources   Download

BSD-3-Clause

The Requires

 

by Felipe Amaral