Как загрузить лицо шрифта otf и ttf в следующем js - PullRequest
0 голосов
/ 18 марта 2020

пытается загрузить шрифт ttf face в следующем js application.added next-font и настроенном файле next.config. js. но его выдача ниже ошибки

ModuleParseError: Module parse failed: Unexpected token (1:0)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. 

это мой следующий .config. js

const webpack = require("webpack");
const withCss = require("@zeit/next-css");
const withSass = require("@zeit/next-sass");
const withFonts = require("next-fonts");
require("dotenv").config({
  path: `.env.${process.env.NODE_ENV || "development"}`
});
module.exports = withFonts(
  withSass(
    withCss({
      assetPrefix: process.env.BASE_PATH || "",
      basePath: process.env.BASE_PATH || "",
      publicRuntimeConfig: {
        basePath: process.env.BASE_PATH || ""
      },
      webpack: (config, { isServer }) => {     
        config.node = {
          fs: "empty"
        };
        if (isServer) {
          const antStyles = /antd\/.*?\/style\/css.*?/;
          const origExternals = [...config.externals];
          config.externals = [
            (context, request, callback) => {
              if (request.match(antStyles)) return callback();
              if (typeof origExternals[0] === "function") {
                origExternals[0](context, request, callback);
              } else {
                callback();
              }
            },
            ...(typeof origExternals[0] === "function" ? [] : origExternals)
          ];

          config.module.rules.unshift({
            test: antStyles,
            use: "null-loader"
          });
        }     
        const env = Object.keys(process.env).reduce((acc, curr) => {
          acc[`process.env.${curr}`] = JSON.stringify(process.env[curr]);
          return acc;
        }, {});        
        config.plugins.push(new webpack.DefinePlugin(env));
        return config;
      }
    })
  )
);

Я поместил шрифты в public / fonts / ceraPRo-Black.ttf и css файлы в public / scss / stye.scss s css file

@font-face {
  font-family: CeraPro;
  src: url("../fonts/Cera/CeraPro-Medium.ttf");
  font-weight: 300;
  font-style: normal;
}
body {
  font-family: "CeraPro";
  font-weight: 400; 
}

как я могу решить эту проблему.

...