Grandes notícias! Minificamos e combinamos todos os nossos CSS em apenas um arquivo. Oh,excepto para o CSS Bootstrap! Nós temos duas boas opções. Primeiro, podemos apontar o link para um Bootstrap CDN público. Ou podíamos colocar o bootstrapstyling direto em main.css
. Vamos fazer isso – é muito mais interessante.
Bower!
Bootstrap é instalado graças ao Bowser. Hum, quero dizer, o Bower. Boweris the Composer é o Compositor para os activos front-end, como Bootstrap ou jQuery. É uma alternativa para baixar os arquivos e submetê-los ao seu repo.
Bower lê de, surpresa!, a bower.json
file:
E quando criei o projecto, também adicionei um ficheiro .bowerrc
. Este tellbower para baixar coisas neste web/vendor
diretório:
Isso tornou-os acessíveis ao público.
Mas agora que temos o músculo do Gulp, quero complicar as coisas. Changeth is to be vendor/bower_components
:
Isso vai colocar esses arquivos fora do diretório público, o que a princípio, vai causar alguns problemas. Apague esse material antigo:
rm -rf web/vendor
Cabeça do terminal e ctrl+c do gulp. Agora, execute bower install
:
bower install
Se você não tiver o comando bower
, basta checar os documentos deles. Está instaladoglobalmente via npm, exatamente como gulp.
Done! Agora, no meu diretório vendor/
tenho um lindo bower_components
folder.
Adicionando arquivos CSS ao nosso Gulp Styles Stream
Mas mesmo que eu quisesse ter 2 tags de link separadas no meu layout, eu não posso:Bootstrap não chama mais o diretório web/
home. Então, livre-se da tag itslink.
Em gulpfile.js
, vamos tentar consertar as coisas! Vou começar por adicionar uma nova variável de configuração chamada bowerDir
, porque vai ser muito comum referir-se a coisas nesse diretório. Defina para vendor/bower_components
:
Se você abrir esse diretório, você pode ver onde o bootstrap.css
filelives. Repare, não é um ficheiro Sass – apenas um CSS antigo normal. Na verdade existe uma versão Sass do Bootstrap, e você pode usá-la totalmente se quiser controlar suas variáveis Bootstrap.
Mas a questão é, podemos empurrar arquivos CSS simples através da nossa função de processamento de SassaddStyle
? Claro! Vamos adicionar config.bowerDir
depois /bootstrap/dist/css/bootstrap.css
:
E nem precisamos de nos preocupar em obter o ficheiro min, porque já estamos a tratar disso. Este ficheiro vai passar pelo filtro sass
, mas tudo bem! Vai parecer o ficheiro Sass mais chato de sempre.
Cabeça de volta e corra gulp
:
gulp
E agora, main.css
começa com o glorioso código Bootstrap. E seria minificado se eu tivesse passado o --production
flag.
O nosso site ainda deve ficar ótimo. Por isso, actualiza-te. Sim, é exatamente como antes, mas com um arquivo CSS a menos para baixar.
Renomeando a tarefa para estilos
E antes de continuarmos, acho que podemos fazer outra melhoria. A nossa tarefa chama-se sass
. Vamos mudar isso para styles
, porque seu trabalho é realmente processar estilos, sejam eles arquivos CSS ou Sass.
Tambem precisamos mudar esse nome na default
task. Ooops, e antes de iniciar o Gulp, também mudar o nome na watch
task para styles
:
Ok, agora podemos tentar coisas. ctrl+c para parar o Gulp, e reiniciá-lo:
gulp
Yes, sem erros! E o site ainda parece Tri-tástico! Veja o que eu fiz lá?