React 16、Bootstrap 3、Webpack 2、およびTypescript 2.3を使用します。デフォルトのブートストラップによってWebpack/Bootstrapで使用されるフォント形式を制限するにはどうすればよいですか?
はGlyphicons-Halflings
フォントファミリ用WOFF
、WOFF2
、EOT
、TTF
とSVG
フォント形式を含んでいます。
私だけWOFF
フォント形式をサポートするために満足している - あるいは少なくとも、私はIE8をサポートしていないので、私は間違いなくEOT
に対処する必要はありません、とSVG
とTTF
がうるさく大きいです。私のjavascriptの成果にフォントを埋め込む
はこのWebPACKの構成を介して行われます。
module: {
rules: [
{test: /\.(tsx|ts)$/, loader: "awesome-typescript-loader"},
{test: /\.css$/, use: ['style-loader', 'css-loader']},
{test: /\.(png|woff|woff2|eot|ttf|svg)$/,
loader: 'url-loader?limit=10240',
options: { name: '[path][name].[ext]'},
},
{test: /\.js$/, enforce: "pre", loader: "source-map-loader"},
]
},
私は実際にそのURLローダの設定がどのように機能するかについてはよく分かりません。もともと、フォントファイルを処理するために、コンテンツハッシュを使って名前を変更することなく処理しようとしていました。しかし、代わりにWebpackをJavaScriptファイルにインライン展開して、私はそれをもっと好きだと決めました。特に、他のフォントフォーマットを取り除いてサイズを小さくすることができればと思います。
は、最初は、私はちょうど同じように、URLローダの設定からフォントフォーマットを省略できると思っていた:
{test: /\.(png|woff)$/,
loader: 'url-loader?limit=10240',
options: { name: '[path][name].[ext]'},
},
しかし、それはエラーのこれらの種類で失敗します。
ERROR in ./~/bootstrap/dist/fonts/glyphicons-halflings-regular.eot
Module parse failed: ....\node_modules\bootstrap\dist\fonts\glyphicons-halflings-regular.eot Unexpected character '�' (1:0)
You may need an appropriate loader to handle this file type.
(Source code omitted for this binary file)
@ ./~/css-loader!./~/bootstrap/dist/css/bootstrap.css 6:4445-4497 6:4520-4572
@ ./~/bootstrap/dist/css/bootstrap.css
@ ./src/main/ts/AppReactRoot.tsx
だから私はおそらく私のapp.css
ファイルのブートストラップのフォント面を無効にすることができ、単一のフォント形式を指定するだけかもしれないと思った:
@font-face {
font-family: "Glyphicons Halflings";
src: url("~bootstrap/dist/css/bootstrap.css") format('woff');
font-weight: normal;
}
しかし、それは違いがないようです。 app.css
ファイル、それが違いを行う場合、次のようになります。だから、
import * as React from "react";
import * as ReactDOM from "react-dom";
import "bootstrap/dist/css/bootstrap.css";
import './app.css';
import {UserApp} from "app/UserApp";
ReactDOM.render(
<UserApp/>,
document.getElementById("root")
);
、質問です:私はWOFF
フォントフォーマットを使用しているように、どのように私は、ブートストラップのデフォルトを上書きすることができますか?