Webpack 字体语义-ui

Webpack fonts semantic-ui

我无法获得语义-ui 字体来使用 webpack,我仍然以 404 未找到错误结束。

显然,字体的输出路径进入了我的网络服务器的根目录 http://localhost/build/fonts/icons.woff2

我需要它在 http://localhost/my_projet/build/fonts/icons.woff2

从你写的来看,这似乎是你可以用 webpack 配置的东西。我知道有两种可能的方法可以做到这一点,但这取决于您的配置,哪一种适合您,或者两者的结合是否可以解决您的问题。

A) 配置 module.loaders file-loader(或 url-loader,它基于文件加载器)name参数使用完整路径:

{
     test: /\.(woff|woff2|ttf|svg|eot)$/,
     loader: 'url-loader?name=/full/path/to/fonts/[name].[ext]'
}

B) 使用 output.publicPath

output: {
    filename: myProjectBundleFileName,
    publicPath: '/full/path/on/host'
},

如果您使用 public 路径,请不要包含字体加载器的完整路径:

{
     test: /\.(woff|woff2|ttf|svg|eot)$/,
     loader: 'url-loader?name=/fonts/[name].[ext]'
}

您的解决方案可能有效,但使用 webpack encore 您可以这样做:

Encore.setPublicPath('your_project/path_of_your_build')