Laravel 5.1和Bootstrap 3 Sass设置

3
我想在Laravel 5.1中使用Bootstrap 3 Sass,但我有一些问题:
  • 在Laravel的package.json文件中,默认情况下有一个依赖项"bootstrap-sass": "^3.0.0"。那么是否有简单的方法来设置Laravel 5.1与Bootstrap Sass?
  • 我需要拉取Bootstrap源码,还是只需链接到CDN或将文件放入公共文件夹中?
  • 有没有理由使用Bootstrap的源代码,而不是将其放在公共文件夹中?
  • 我是否正确地认为我需要通过Bower安装Bootstrap,将字体文件夹内容移动到公共文件夹中,然后设置Elixir将所有Sass文件混合在一起?

我对将第三方前端服务(如Bootstrap)集成到Laravel中感到有些困惑。我对Laravel和Bootstrap都很陌生,因此任何信息或建议都将不胜感激。

注意:我在网上做了很多研究,但Laravel和Bootstrap的教程已经过时,评论也表明它们不能正常工作。

谢谢你的时间。

1个回答

4
首先,在文件夹中运行npm install命令来安装节点包。
接下来,如果您导航到resources/assets/sass/app.scss,您将看到第一行被注释的代码从通过package.json安装的节点模块中导入整个bootstrap。
取消注释后,您可以在默认的gulpfile.js中看到elixir命令来编译应用程式sass文件。
完成所有设置后,只需运行gulp,elixir将编译导入bootstrap的sass文件,并将输出放置在public/css/app.css中,您可以在应用程序中链接此文件。
最后,要复制字体或任何其他资产,您可以使用copy命令,并将字体复制到公共文件夹中。
elixir(function(mix) {
    mix.copy('node_modules/bootstrap-sass/assets/fonts/', 'public/fonts');
    mix.sass('app.scss'); 
}

非常感谢你的时间,Altrim! - Caleb Jacobo
1
其他源文件和脚本如bootstrap.js怎么办?我是不是可以直接从gulpfile.js中混合它们?像这样:../../../node_modules/bootstrap-sass/assets/javascripts/bootstrap.min.js - Curvian Vynes
链接字体是如何工作的?即bootstrap如何知道字体在public/fonts目录中? - shaneparsons
1
@Shane 如果你查看Bootstrap源代码,你会发现默认情况下Bootstrap包含来自../fonts/的字体。在这种情况下,基本上目录结构与下载Bootstrap时默认的目录结构相同。在这种情况下,CSS位于public/css/文件夹中,我们将字体复制到public/fonts/中。 - Altrim
1
@CurvianVynes 我猜你可以这样做,但我通常首先将js文件复制到/resources/assets/js/,然后再从那里混合它们。 - Altrim

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接