React.jsでGoogleフォントを使う:WebフォントをReactプロジェクトに追加する方法

2024-04-02

React.jsでGoogleフォントを使用する方法

前提条件

  • Node.js
  • Yarnまたはnpm

手順

新しいReactプロジェクトを作成

npx create-react-app my-app

Google Fonts APIを使用する

  1. "Select this style" をクリックし、 "Embed" タブを選択します。
  2. "Web" タブを選択し、 "CSS" を選択します。
  3. コードをコピーします。

コードをReactプロジェクトに追加

  1. App.css ファイルを作成します。
  2. コピーしたコードを App.css ファイルに貼り付けます。
  3. フォントを使用するコンポーネントのスタイルシートに App.css をインポートします。

例:

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');

body {
  font-family: 'Roboto', sans-serif;
}
  1. アプリケーションを起動します。
yarn start

Webpackを使用している場合は、@import ルールを解決するためにいくつかの追加手順が必要です。

  1. webpack.config.js ファイルに以下のモジュールをインストールします。
npm install --save-dev css-loader style-loader
module.exports = {
  // ...
  module: {
    rules: [
      // ...
      {
        test: /\.css$/,
        use: ['style-loader', 'css-loader'],
      },
    ],
  },
};
yarn start

このチュートリアルでは、React.jsでGoogleフォントを使用する方法について説明しました。これらの手順に従うことで、自分のReactプロジェクトに簡単にGoogleフォントを追加することができます。




import React from 'react';
import ReactDOM from 'react-dom';

const App = () => {
  return (
    <div>
      <h1>Hello, world!</h1>
      <p>This is a paragraph.</p>
    </div>
  );
};

const rootElement = document.getElementById('root');
ReactDOM.render(<App />, rootElement);

このコードは、<h1> タグと <p> タグにデフォルトのフォントを使用します。

Googleフォントを使用するには、以下のコードのように App.css ファイルにフォントファミリーを指定する必要があります。

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');

body {
  font-family: 'Roboto', sans-serif;
}

このコードは、Google FontsのRobotoフォントをインポートし、body 要素のフォントファミリーとして設定します。

アプリケーションを起動すると、<h1> タグと <p> タグがRobotoフォントで表示されます。

  • 特定のコンポーネントにのみGoogleフォントを使用するには、そのコンポーネントのスタイルシートにフォントファミリーを指定します。
  • Googleフォントのさまざまなスタイルを使用するには、font-weightfont-style などのプロパティを使用します。



React.jsでGoogleフォントを使用する他の方法

@fontsource ライブラリを使用する

使用方法:

  1. @fontsource ライブラリをインストールします。
npm install --save-dev @fontsource/roboto
import React from 'react';
import ReactDOM from 'react-dom';
import { Roboto } from '@fontsource/roboto';

const App = () => {
  return (
    <div>
      <Roboto>
        <h1>Hello, world!</h1>
        <p>This is a paragraph.</p>
      </Roboto>
    </div>
  );
};

const rootElement = document.getElementById('root');
ReactDOM.render(<App />, rootElement);

このコードは、Roboto コンポーネントを使用して、<h1> タグと <p> タグにRobotoフォントを適用します。

CSS Fonts Moduleは、WebフォントをCSSだけで簡単に使用できるようにする新しいCSS標準です。

  1. @font-face ルールを使用して、GoogleフォントのCSSファイルにリンクします。
@font-face {
  font-family: 'Roboto';
  src: url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');
}

body {
  font-family: 'Roboto', sans-serif;
}
  1. font-family プロパティを使用して、body 要素にRobotoフォントを適用します。

Google Web Fonts Helperは、GoogleフォントをWebサイトに追加するための簡単なツールです。

  1. コードをコピーし、index.html ファイルに追加します。

上記の方法はすべて、React.jsでGoogleフォントを使用する有効な方法です。 どの方法を使用するかは、プロジェクトの要件と個人的な好みによって異なります。


reactjs webpack google-font-api


Reactでデータフェッチングをもっと簡単に!useSWR、react-query、Apollo Client徹底解説

サーバーサイドレンダリング (SSR)SSRは、サーバー側でReactコンポーネントをレンダリングし、完全にレンダリングされたHTMLページをクライアントに送信する技術です。これにより、以下の利点が得られます。ファーストペイントの高速化: クライアントはすぐにコンテンツを表示できるため、ユーザーにとっての読み込み時間が短くなります。...


ReactコンポーネントでTypeScriptを使ってデフォルトプロパティ値を設定する方法

コンポーネントのプロパティをインターフェースで定義し、デフォルト値を設定できます。上記の場合、titleプロパティは省略可能で、デフォルト値は "Hello, world!" です。countプロパティは必須です。デフォルト値演算子 (??) を使用して、プロパティが存在しない場合のみデフォルト値を設定できます。...


ReactJSでREST APIにPOSTリクエストを送信する3つの方法:ReactJS、ReactJS-Flux、ReactJS-Native

このチュートリアルでは、ReactJS コードで REST API に POST リクエストを送信する方法を説明します。3 つの主要なライブラリ、ReactJS 自体、ReactJS-Flux、ReactJS-Native に焦点を当てて説明します。...


【徹底解説】create-react-app でカスタム PUBLIC_URL を設定できない問題を解決する方法

Create React App で構築したプロジェクトを、カスタム PUBLIC_URL 環境変数を指定してビルドしようとすると、エラーが発生することがあります。これは、PUBLIC_URL の扱いに関するバグまたは仕様上の制限が原因である可能性があります。...


React Router 4 の useContext フックとグローバルステートで認証を管理

React Router 4 で認証済みルートを実装するには、いくつかの方法があります。ここでは、最も一般的な 2 つの方法を紹介します。useAuth カスタムフックを使用するこの方法は、useContext フックを使用して、認証状態をコンポーネント間で共有することを前提としています。...