У меня есть файл next.config.js со следующей конфигурацией:
const withSass = require('@zeit/next-sass');
const withCss = require('@zeit/next-css');
module.exports = withSass(withCss({
webpack (config) {
config.module.rules.push({
test: /\.(png|svg|eot|otf|ttf|woff|woff2)$/,
use: {
loader: 'url-loader',
options: {
limit: 100000,
publicPath: './',
outputPath: 'static/',
name: '[name].[ext]'
}
}
})
return config
}
}));
Это здорово, потому что он запускает мои файлы семантического интерфейса CSS.
Теперь у меня проблема. Я не могу успешно импортировать любой URL-адрес шрифта Google. Я попытался загрузить файл ttf в путь к файлу и попытался сослаться на него с помощью функции @import scss. Однако я получаю ошибку GET http://localhost:3000/fonts/Cabin/Cabin-Regular.ttf net :: ERR_ABORTED 404 (не найдено)
Вот что я пытаюсь сделать с помощью шрифта Google:
@font-face {
font-family: 'Cabin';
src: url('/fonts/Cabin/Cabin-Regular.ttf') format('truetype');
}
$font-size: 100px;
.example {
font-size: $font-size;
font-family: 'Cabin', sans-serif;
}
Я также скачал соответствующие зависимости npm:
"@zeit/next-css": "^1.0.1",
"@zeit/next-sass": "^1.0.1",
"file-loader": "^2.0.0",
"next": "^7.0.2",
"node-sass": "^4.9.4",
"react": "^16.6.0",
"react-dom": "^16.6.0",
"semantic-ui-css": "^2.4.1",
"semantic-ui-react": "^0.83.0",
"url-loader": "^1.1.2"