2
laravel mix에서 빌드 SVG 스프라이트를 구성해야합니다.
나는 webpack, result = 0
의 밑에 몇몇 도서관을 시도했다.Laravel MIX에서 svg 스프라이트를 만드는 방법은 무엇입니까?
구성 방법을 조언 해 줄 사람이 있습니까?
는 어디 webpack.mix.js 또는 app.js의 핸들러 코드를 작성하는?
laravel mix에서 빌드 SVG 스프라이트를 구성해야합니다.
나는 webpack, result = 0
의 밑에 몇몇 도서관을 시도했다.Laravel MIX에서 svg 스프라이트를 만드는 방법은 무엇입니까?
구성 방법을 조언 해 줄 사람이 있습니까?
는 어디 webpack.mix.js 또는 app.js의 핸들러 코드를 작성하는?
한 가지 방법으로 나는 Laravele Mix & svg-spritemap-webpack-plugin으로 작업하는 SVG 스프라이트를 얻을 수있었습니다.
먼저 spritemap의
npm install svg-spritemap-webpack-plugin --save-dev
은 다음처럼 설정 webpack.mix.js
를 추가 플러그인 설치 : 당신은 공중에 복사되는 /resources/assets/svg/*.svg
에 * .svg 파일을 추가 할 수 있어야이와
const mix = require('laravel-mix');
const SVGSpritemapPlugin = require('svg-spritemap-webpack-plugin');
// Set up the spritemap plugin
mix.webpackConfig({
plugins: [
new SVGSpritemapPlugin({
src:'assets/svg/icons/*.svg',
filename: '/svg/icons.svg',
prefix: '',
svg4everybody: true,
svgo: {
removeTitle: true,
removeStyleElement: true,
cleanupNumericValue: true,
},
})
]
});
// Adapt laravel-mix webpack config to better handle svg images.
Mix.listen('configReady', (webpackConfig) => {
// Add separate svg loader
webpackConfig.module.rules.push({
test: /\.(svg)$/,
include: /assets\/svg/,
loaders: [
{
loader: 'file-loader',
options: {
name: 'svg/[name].[ext]?[hash]',
publicPath: Config.resourceRoot
}
},
{
loader: 'img-loader',
options: Config.imgLoaderOptions
}
]
});
// Exclude local 'svg' folder from font loader
let fontLoaderConfig = webpackConfig.module.rules.find(rule => String(rule.test) === String(/\.(woff2?|ttf|eot|svg|otf)$/))
fontLoaderConfig.exclude = /(assets\/svg)/;
});
및 /resources/assets/svg/icons/*.svg
귀하의 질문에 대답하지 못했지만이 문제에 직면하여 사용을 중단하기로 결정했습니다. [this CSS-Tricks article :] (https://css-tricks.com/pretty-good-svg-icon-system/)에 기초한 SVG 스프라이트 –
아주 나쁜 생각입니다. 나는 보통 여러 번 반복되는 많은 아이콘을 가지고있다. 이 방법을 사용하면 코드 출력량이 늘어납니다. – korg