ヒント
このレッスンは、New Relic アプリケーションをゼロから構築する方法を学習するコースの一部です。 まだご覧になっていない方は、概要をご覧ください。
コースの各レッスンは前回のレッスンに基づいて構築されるため、このレッスンを開始する前に、前回のレッスン「UI の追加」を完了していることを確認してください。
これまでの実践レッスンでは、デザイン ガイドからすべてのチャートを作成しました。 残念ながら、デザイン通りのレイアウトになっていません。 New Relic One SDK は、コンポーネントを整理するための複数のソリューションを提供します。 このレッスンで学習するのはGrid
コンポーネントです。
チャートを配置するには、チャートをGrid
に配置します。 Grid
は、コンテンツを 12 列の行に整理するために使用するコンテナーです。 GridItem
はGrid
の構成要素です。 GridItem
のcolumnSpan
を1から12の間で指定して、 GridItem
が行のどの部分をカバーするかを決定します。 したがって、グラフをビューの幅全体に広げたい場合は、グラフをGridItem
に配置し、 columnSpan
を12に設定します。 12 個のグラフを 1 行に収めたい場合は、 columnSpan
に1を使用します。
列をどのように配置するかを計画したら、その計画を実現するためのコードを記述できます。
コースワークリポジトリのadd-a-grid/ab-test
ディレクトリに変更します:
$cd nru-programmability-course/add-a-grid/ab-test
Nerdlet のindex.js
ファイルで、 Grid
とGridItem
をインポートします。 次に、各チャートをGrildItem
に配置して、Nerdlet のrender()
メソッドを更新します。 最後に、すべてのアイテムをGrid
に配置します。
import React from 'react';import { ChartGroup, Grid, GridItem } from 'nr1';import NewsletterSignups from './newsletter-signups';import PastTests from './past-tests';import TotalCancellations from './total-cancellations';import TotalSubscriptions from './total-subscriptions';import VersionPageViews from './page-views';import VersionTotals from './totals';
export default class AbTestNerdletNerdlet extends React.Component { render() { return <div> <Grid className="wrapper"> <GridItem columnSpan={12}><NewsletterSignups /></GridItem> <GridItem columnSpan={6}><TotalSubscriptions /></GridItem> <GridItem columnSpan={6}><TotalCancellations /></GridItem> <GridItem columnSpan={6}><VersionTotals version='a' /></GridItem> <GridItem columnSpan={6}><VersionTotals version='b' /></GridItem> <ChartGroup> <GridItem columnSpan={6}> <VersionPageViews version='a' /> </GridItem> <GridItem columnSpan={6}> <VersionPageViews version='b' /> </GridItem> </ChartGroup> <GridItem columnSpan={12}><PastTests /></GridItem> </Grid> </div> }}
各チャートのcolumnSpan
はレイアウト プランと一致します。 12 列の行の半分を占めるすべてのグラフのcolumnSpan
は6で、行全体を占めるすべてのグラフのcolumnSpan
は12です。 ChartGroup
内の各グラフはGridItem
にありますが、 ChartGroup
自体は含まれていないことに注意してください。 ChartGroup
チャートの位置ではなく動作を接続します。
各チャートはfullWidth
プロパティを使用しているため、 columnSpan
を埋めます。 fullWidth
は、グラフを利用可能な水平方向のスペースいっぱいに表示し、 GridItem.columnSpan
はそのスペースを行の一部に制限します。 fullWidth
プロパティを削除して、チャートがどのように反応するかを確認します。
技術的詳細
Grid
にwrapper
クラスが適用されていることに注意してください。 このアプリの見栄えを良くするために、いくつかの CSS スタイルをこっそり提供しました。 これは CSS コースではないため、追加したすべての内容を説明するのではなく、コード スニペットで使用することを意図したスタイルのみを説明します。 New Relic One SDK のすべての UI コンポーネントには、CSS クラス名を指定できるclassName
プロパティが用意されていることに注意してください。
nerdlets/ab-test-nerdlet/styles.scss
でスタイルを表示できます。
nru-programmability-course/add-a-grid/ab-test
にある Nerdpack のルートに移動します。
Nerdpack の新しい UUID を生成します。
$nr1 nerdpack:uuid -gf
既存の Nerdpack を含むコースワーク リポジトリを複製したため、独自の一意の識別子を生成する必要があります。 この UUID は Nerdpack を New Relic アカウントにマッピングします。
アプリケーションをローカルで提供します。
$nr1 nerdpack:serve
New Relicで変更内容を表示します。
ここでは、チャートがスタイル設定され、グリッド内に配置されます。
完了したら、ローカル サーバーのターミナル ウィンドウでCTRL+C
を押して、New Relic アプリケーションの提供を停止します。
わずか 6 つの手順で、A/B テスト アプリケーションの読みやすさと使いやすさが大幅に向上しましたが、グラフの使いやすさをさらに向上させる手順をさらに実行できます。 次のレッスンでは、各グラフにどのようなデータが表示されるかを思い出せるように、グラフに見出しを追加します。
コース
このレッスンは、New Relic アプリケーションをゼロから構築する方法を学習するコースの一部です。 準備ができたら、次のレッスン「グラフの見出しを追加する」に進んでください。