I'm not sure, but empirically found out that it seems minicssextractor breaks the paths to fonts written in css @foont-face
@font-face {
font-family: 'Waiting-for-the-Sunrise';
font-style: normal;
font-weight: 400;
src: url('waiting-for-the-sunrise-v16-latin-regular.eot'); /* IE9 Compat Modes */
src: url('waiting-for-the-sunrise-v16-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('waiting-for-the-sunrise-v16-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
url('waiting-for-the-sunrise-v16-latin-regular.woff') format('woff'), /* Modern Browsers */
url('waiting-for-the-sunrise-v16-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
url('waiting-for-the-sunrise-v16-latin-regular.svg#WaitingfortheSunrise') format('svg'); /* Legacy iOS */
}
I came to such paths during the experiment, the fact is that the browser tried to search for fonts in this location. (read this in the console error)
http://localhost:9000/fontswaiting-for-the-sunrise-v16-latin-regular.47278f9491df1166dc0d.woff2
With a missing back slash after the fonts folder name
When I wrote the following path to save font files in assetModule
{
test: /\.(woff2?|eot|ttf|otf|svg)$/i,
include: [
path.join(__dirname, 'src', 'fonts')
],
generator: {
filename: path.join('fonts[name].[hash][ext]')
},
type: 'asset/resource',
}
Everything worked. But this is not as it should be. I'm guessing the paths break after mini-css-exctractor
P.s.
Or problem in css-loader, final css is
/*!***********************************************************************!*\
!*** css ./node_modules/css-loader/dist/cjs.js!./src/fonts/fonts.css ***!
\***********************************************************************/
/* waiting-for-the-sunrise-regular - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: 'Waiting-for-the-Sunrise';
font-style: normal;
font-weight: 400;
src: url(fontswaiting-for-the-sunrise-v16-latin-regular.3ad9d32bdd08f024e2ce.eot); /* IE9 Compat Modes */
src: url(fontswaiting-for-the-sunrise-v16-latin-regular.3ad9d32bdd08f024e2ce.eot?#iefix) format('embedded-opentype'), /* IE6-IE8 */
url(fontswaiting-for-the-sunrise-v16-latin-regular.47278f9491df1166dc0d.woff2) format('woff2'), /* Super Modern Browsers */
url(fontswaiting-for-the-sunrise-v16-latin-regular.7a974ce46409250b31e3.woff) format('woff'), /* Modern Browsers */
url(fontswaiting-for-the-sunrise-v16-latin-regular.8b5a4b6939495fe862ee.ttf) format('truetype'), /* Safari, Android, iOS */
url(fontswaiting-for-the-sunrise-v16-latin-regular.a7f1c3b3b712d68f152a.svg#WaitingfortheSunrise) format('svg'); /* Legacy iOS */
}