【问题标题】:Laravel 5.4 adding zurb foundation 6.3.0 using composerLaravel 5.4 使用 composer 添加 zurb Foundation 6.3.0
【发布时间】:2017-07-01 14:29:33
【问题描述】:
在我运行 composer require zurb/foundation 之后,如何引用我的供应商目录中的基础文件 @import Foundation 总是说找不到该文件,并且看起来 laravel mix 没有像 elixir 那样包含路径的选项在以前的版本中。
我在网上看到的几乎所有使用 npm 安装基础的东西都是首选方式吗?我不反对使用 npm,但是当我运行“npm run production”时,由于字符串文字“`”而失败,因为 uglifyJs 不支持 ES6。我正在尝试composer版本,因为我相信它已经编译了js,所以我不必做任何骇人听闻的事情来让它在生产中运行。
【问题讨论】:
标签:
css
node.js
webpack
composer-php
laravel-5.4
【解决方案1】:
我自己找到了这个问题的答案。您必须将基础文件复制到相应的资源/资产文件夹,然后从那里引用它们。我将第三个参数设置为 false,因为默认情况下它会折叠文件。
.copy('vendor/zurb/foundation/js', 'resources/assets/js/foundation', false)
.copy('vendor/zurb/foundation', 'resources/assets/sass/foundation', false)
然后像这样为 scss 引用基础文件:@import ./foundation/scss/foundation;
【解决方案2】:
我实际上能够让基础与 npm 包一起工作。通过添加 webpackConfig,它可以避免基础文件夹在生产中被丑化。
if (mix.inProduction()) {
mix.webpackConfig({
output: {
chunkFilename: 'js/chunk-[id]-[chunkhash].js'
},
module: {
rules: [{
test: /\.jsx?$/,
exclude: /node_modules(?!\/foundation-sites)|bower_components/,
use: [{
loader: 'babel-loader',
options: Config.babel()
}]
}]
}
});
}