国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目次
ユーザーインターフェイスの外観と感觸を擔(dān)當(dāng)します。プロジェクトのプロトタイプフェーズが完了した後、デザイナーは通常チームを去ります。新しい要件が発生した場合、UIの現(xiàn)在の狀態(tài)を迅速に理解する必要があります。
開発者は、これらのコンポーネントを作成するものであり、スタイルガイドの主な受益者である可能性があります。開発者には2つの主なユースケースがあります。ライブラリから適切なコンポーネントを見つけて、開発中にテストすることができるということです。
tester
プロダクトオーナー
React Storybook Reactストーリーブックを設(shè)定するには、最初にReactプロジェクトが必要です。現(xiàn)時點で適切なプロジェクトがない場合は、Create-React-Appで簡単に作成できます。
構(gòu)成をビルド
ホームページ ウェブフロントエンド jsチュートリアル React Storybook:美しいユーザーインターフェイスを簡単に開発します

React Storybook:美しいユーザーインターフェイスを簡単に開発します

Feb 17, 2025 am 08:59 AM

React Storybook: Develop Beautiful User Interfaces with Ease

React Storybook: Develop Beautiful User Interfaces with Ease

フロントエンドプロジェクトの開始時には、通常、美しいインターフェイスが最初に設(shè)計されています。すべてのUIコンポーネントとそれらのさまざまな狀態(tài)と効果を慎重に計畫および描畫します。ただし、開発中は狀況が変化する傾向があります。新しい要求と予期せぬユースケースが次々と出現(xiàn)しています。當(dāng)初の美しいコンポーネントのライブラリは、これらのニーズのすべてをカバーするものではなく、新しいデザインを追加し続ける必要があります。

現(xiàn)時點であなたの周りにデザインの専門家がいる場合、それは素晴らしいことですが、彼らはしばしば他のプロジェクトに切り替えて、これらの変更に対処するために開発者だけを殘します。その結(jié)果、設(shè)計の一貫性は低下し始めます。コンポーネントライブラリの既存のコンポーネント、そのステータスと外観を追跡することは困難です。

この設(shè)計の混亂を避けるために、通常、すべてのコンポーネントに個別のドキュメントを作成することが最善です。この目的のために利用できるさまざまなツールがありますが、この記事はReactアプリケーション専用に設(shè)計されたツールであるReact Storybookに焦點を當(dāng)てます。コンポーネントとその機能のコレクションを簡単に閲覧できます。 Reactネイティブコンポーネントライブラリは、このようなアプリケーションの例です。

キーポイント

  • UIの開発を簡素化:Reactストーリーブックは、UIコンポーネントの開発と管理プロセスを簡素化し、開発者が獨立してコンポーネントを構(gòu)築し、リアルタイムで動作を視覚化できるようにします。
  • 強化されたコラボレーション:これは、すべてのUIコンポーネントを表示および対話するための単一の場所を提供することにより、デザイナー、開発者、およびその他の利害関係者の間のギャップを埋めるコラボレーションプラットフォームとして機能します。
  • カスタマイズ可能でスケーラブル:アドオンと構(gòu)成設(shè)定を備えた幅広いカスタマイズオプションを提供し、開発者が特定のプロジェクトのニーズに合わせてツールをカスタマイズできるようにします。
  • 自動テストのサポート:JESTおよびその他のテストフレームワークと統(tǒng)合して、UIコンポーネント開発環(huán)境での直接自動テストを容易にします。
  • 広く汎用性があり、スケーラブル:小規(guī)模および大規(guī)模プロジェクトに適しており、React以外の他のJavaScriptフレームワークをサポートしているため、さまざまな開発チームに多目的な選択肢となっています。

なぜReact Storybookが必要なのですか?

では、この表示はどのように役立ちますか?この質(zhì)問に答えるために、UIコンポーネントの開発に関與する人々をリストし、彼らのニーズを評価してみましょう。ワークフローによっては、このリストは異なる場合がありますが、通常は次のものが含まれます。

デザイナーまたはUXエキスパート

ユーザーインターフェイスの外観と感觸を擔(dān)當(dāng)します。プロジェクトのプロトタイプフェーズが完了した後、デザイナーは通常チームを去ります。新しい要件が発生した場合、UIの現(xiàn)在の狀態(tài)を迅速に理解する必要があります。

開発者

開発者は、これらのコンポーネントを作成するものであり、スタイルガイドの主な受益者である可能性があります。開発者には2つの主なユースケースがあります。ライブラリから適切なコンポーネントを見つけて、開発中にテストすることができるということです。

tester

テスターは、コンポーネントが予想どおりに実裝されていることを慎重に確認(rèn)します。テスターの主な仕事の1つは、コンポーネントがあらゆる面で正しく機能することを確認(rèn)することです。これは統(tǒng)合テストの必要性を排除するものではありませんが、通常、プロジェクト自體で単獨で行うよりも便利です。

プロダクトオーナー

設(shè)計および実裝擔(dān)當(dāng)者を受け取ります。プロダクトオーナーは、プロジェクトのすべての部分が期待に沿っていること、およびブランドスタイルが一貫していることを確認(rèn)する必要があります。

関係者全員が共通しているのは、すべてのコンポーネントを持つ単一の場所を持っていることに気づいたかもしれません。プロジェクト自體のすべてのコンポーネントを見つけることは非常に退屈です。それについて考えてください、プロジェクト內(nèi)のすべての可能なボタンバリアント(そのステータス(無効、プライマリ、セカンダリなど)を見つけるのにどれくらい時間がかかりますか?したがって、別のライブラリを持つ方がはるかに便利です。

私があなたに納得したなら、あなたのプロジェクトにストーリーブックを設(shè)定する方法を見てみましょう。

React Storybook Reactストーリーブックを設(shè)定するには、最初にReactプロジェクトが必要です。現(xiàn)時點で適切なプロジェクトがない場合は、Create-React-Appで簡単に作成できます。

ストーリーブックを生成するには、Getttorybookをグローバルにインストールしてください:

その後、プロジェクトに移動して実行します:
<code>npm i -g getstorybook</code>

このコマンドは、次の3つの操作を?qū)g行します

<code>getstorybook</code>
@Kadira/Storybookをプロジェクトにインストールします。

StoryBookとBuild-StorybookスクリプトをPackage.jsonファイルに追加します。
  • 基本的な構(gòu)成を備えた.storybookフォルダーと、サンプルコンポーネントとストーリーを備えたストーリーフォルダーを作成します。
  • ストーリーブックを?qū)g行するには、NPMを?qū)g行してストーリーブックを?qū)g行して表示されたアドレスを開きます(
  • http://m.miracleart.cn/link/93e4d7106625e1b0f2eb8af065c83452

新しいコンテンツを追加React Storybook: Develop Beautiful User Interfaces with Ease

React Storybookが実行されているので、新しいコンテンツを追加する方法を見てみましょう。新しいページは、ストーリーを作成することで追加されます。これらは、コンポーネントをレンダリングするコードのスニペットです。 gettstorybookによって生成されたサンプルストーリーを以下に示します。 Storiesof関數(shù)は、ナビゲーションメニューに新しい部分を作成し、ADDメソッドは新しいサブパートを作成します。ストーリーブックを自由に整理することはできますが、2つのレベルを超える階層を作成することはできません。ストーリーブックを整理する簡単な方法の1つは、「フォーム入力」、「ナビゲーション」、「ウィジェット」、および個々のコンポーネントのサブパートなど、関連する要素グループの共通のトップレベルセクションを作成することです。

ストーリーファイルを配置する場所を自由に選択できます。別のストーリーフォルダーまたはコンポーネントの橫にあります。私は個人的に後者を好みます。なぜなら、コンポーネントにストーリーを置くことは、それらをアクセスしやすく最新の狀態(tài)に保つのに役立つからです。

//src/stories/index.js

import React from 'react';
import { storiesOf, action, linkTo } from '@kadira/storybook';
import Button from './Button';
import Welcome from './Welcome';

storiesOf('Welcome', module)
  .add('to Storybook', () => (
    <Welcome showApp={linkTo('Button')}/>
  ));

storiesOf('Button', module)
  .add('with text', () => <Button>Hello Button</Button>)
  .add('with some emoji', () => <Button>? ? ? ?</Button>);
ストーリーは.storybook/config.jsファイルにロードされています。これには、次のコードが含まれています。
<code>npm i -g getstorybook</code>

<code>getstorybook</code>
ソースコードとして別のフォルダーを使用している場合は、正しい場所を指すようにしてください。変更を?qū)g施するためのストーリーブックを再実行します。 Storybookはindex.jsファイルをインポートしなくなったため空になりますが、この問題はすぐに解決します。

(以下の內(nèi)容は基本的に元のテキストと一致しており、セマンティクスを変更しないように少し調(diào)整し、部分的な説明が簡素化されます)

新しいストーリーを書く

私たちのニーズに合わせてストーリーブックをわずかに微調(diào)整したので、最初のストーリーを書きましょう。しかし、最初に表示するコンポーネントを作成する必要があります。色のブロックに名前を表示するシンプルな名前コンポーネントを作成しましょう。このコンポーネントには、次のJavaScriptとCSSがあります。

//src/stories/index.js

import React from 'react';
import { storiesOf, action, linkTo } from '@kadira/storybook';
import Button from './Button';
import Welcome from './Welcome';

storiesOf('Welcome', module)
  .add('to Storybook', () => (
    <Welcome showApp={linkTo('Button')}/>
  ));

storiesOf('Button', module)
  .add('with text', () => <Button>Hello Button</Button>)
  .add('with some emoji', () => <Button>? ? ? ?</Button>);
import { configure } from '@kadira/storybook';

function loadStories() {
  require('../src/stories');
}

configure(loadStories, module);
この単純なコンポーネントには、デフォルト、ハイライト、および無効の3つの狀態(tài)があることに気付いたかもしれません。これらすべての狀態(tài)を視覚化するのはいいことではないでしょうか?このための物語を書きましょう。新しいname.stories.jsファイルをコンポーネントの橫に作成し、以下を追加します。

ストーリーブックを開いて、新しいコンポーネントを表示します。結(jié)果は次のようにする必要があります
import { configure, addDecorator } from '@kadira/storybook';
import React from 'react';

configure(() => {
    const req = require.context('../src', true, /.stories\.js$/);
    req.keys().forEach(filename => req(filename));
  },
  module
);

コンポーネントの表示方法とそのソースコードを自由に変更してください。 Reactのホットなリロード機能により、ブラウザを手動で更新せずに、ストーリーやコンポーネントを編集するたびに変更がすぐにストーリーブックに変更が表示されることに注意してください。ただし、ファイルを追加または削除する場合、更新が必要になる場合があります。ストーリーブックは常にこれらの変更に気付くとは限りません。 React Storybook: Develop Beautiful User Interfaces with Ease

(次のコンテンツも合理化され、セマンティックの一貫性を維持するために調(diào)整されています)

カスタマイズを表示

ストーリーの表示方法を変更したい場合は、コンテナにラップできます。これは、AddDecorator機能を使用して実行できます。たとえば、次のコードを.storybook/config.jsに追加することにより、すべてのページに「例」タイトルを追加できます。

Storiesofの後にAddDecoratorを呼び出すことで、個別の部品をカスタマイズすることもできます。

import React from 'react';
import './Name.css';

const Name = (props) => (
  <div className={`name ${props.type}`}> {props.name} </div>
);

Name.propTypes = {
  type: React.PropTypes.oneOf(['highlight', 'disabled']),
};

export default Name;
ストーリーブックを投稿しました

ストーリーブックの作業(yè)を行って、公開する準(zhǔn)備ができていると思うと、実行して靜的Webサイトとして構(gòu)築できます。 デフォルトでは、ストーリーブックはStoryBook-Staticフォルダーに組み込まれています。 -oパラメーターを使用して出力ディレクトリを変更できます。これで、お気に入りのホスティングプラットフォームにアップロードする必要があります。

GitHubのプロジェクトに取り組んでいる場合は、StorybookをDocsフォルダーに構(gòu)築してリポジトリにプッシュすることで、ストーリーブックを公開できます。 GitHubは、GitHubページのWebサイトをそこから提供するように構(gòu)成できます。ビルドストーリーブックをリポジトリに保存したくない場合は、StoryBook-Deployerを使用することもできます。

構(gòu)成をビルド

ストーリーブックは、ストーリーの多くの機能をサポートするように構(gòu)成されています。 Create-React-Appと同じES2015構(gòu)文で記述できますが、プロジェクトが別のBabel構(gòu)成を使用すると、.babelrcファイルが自動的にピックアップされます。 JSONファイルや畫像をインポートすることもできます。

これで十分でないと思われる場合は、.storybookフォルダーにwebpack.config.jsファイルを作成して、追加のWebPack構(gòu)成を追加できます。このファイルによってエクスポートされる構(gòu)成オプションは、デフォルトの構(gòu)成とマージされます。たとえば、ストーリーにSCSSのサポートを追加するには、次のコードを追加するだけです。

<code>npm i -g getstorybook</code>
SASS-RoaderとNode-Sassをインストールすることを忘れないでください。

必要なWebpack構(gòu)成を追加できますが、エントリ、出力、および最初のBabelローダーをオーバーライドすることはできません。

開発環(huán)境と生産環(huán)境にさまざまな構(gòu)成を追加する場合は、関數(shù)をエクスポートできます?;镜膜蕵?gòu)成と「開発」または「生産」に設(shè)定されたconfigType変數(shù)を使用して呼び出されます。

アドオンを使用して機能を拡張します ストーリーブック自體は非常に便利ですが、それを改善するためには、いくつかのアドオンがあります。この記事では、それらのいくつかのみをカバーしていますが、後で公式リストをチェックしてください。

(次の部分が合理化され、アドオンの導(dǎo)入が調(diào)整されています)ストーリーブックには、アクションとリンクという2つの事前に設(shè)定されたアドオンが付屬しています。それらを使用するために追加の構(gòu)成を作成する必要はありません。

アクション:

アクションロガーパネルでコンポーネントトリガーイベントをログに記録できます。

  • リンク:コンポーネント間にナビゲーションを追加できます。
  • ノブ:実行時にUIから直接反応特性を変更して、コンポーネントをカスタマイズできます。インストール方法:
  • 、登録方法:インポート
。

デコレーターを使用してストーリーを包みます。 npm i --save-dev @storybook/addon-knobs情報:.storybook/addons.jsソースコード、説明、React Proptypesなど、ストーリーに関する情報をさらに追加できます。インストール方法:withKnobs、登録方法:

in

を使用します。 npm i --save-dev @storybook/addon-info自動テスト.storybook/preview.jsaddDecorator

ストーリーブックの重要な側(cè)面(この記事に記載されていない)は、自動テストを?qū)g行するためのプラットフォームとして使用することです。ユニットテストから機能テストや視覚回帰テストまで、さまざまなテストを?qū)g行できます。予想どおり、テストプラットフォームとしてのストーリーブックの機能を強化するために設(shè)計されたアドオンがいくつかあります。彼らは別々の記事に値するので、私たちは詳細(xì)には觸れませんが、それでもそれらについて言及したいと思います。

  • 仕様:ストーリーファイルにユニットテストを直接書き込むことができます。
  • ストーリーショット:ストーリーに基づいてJest Snapshotテストを?qū)g行できます。
サービスとしてのストーリーブック

Kadiraは、Storybook Hubと呼ばれるサービスとしてのStorybookも提供しています。これにより、ストーリーブックをホストし、次のレベルにコラボレーションを行うことができます。標(biāo)準(zhǔn)機能に加えて、GitHubと統(tǒng)合され、プルリクエストごとに新しいストーリーブックを生成できます。また、ストーリーブックに直接コメントを殘して、同僚との変更について話し合うこともできます。

結(jié)論

プロジェクトでUIコンポーネントを維持することが痛みを伴うようになっていると感じたら、一歩下がって、欠けているものを確認(rèn)してください。関係するすべての関係者間で便利なコラボレーションプラットフォームが必要になる場合があります。この場合、React Projectの場合、Storybookはあなたに最適なツールです。

すでにストーリーブックを使用していますか?試してみるつもりですか?なぜ?またはなぜですか?コメントでお聞きしたいです。

(FAQパーツが合理化され、構(gòu)造が調(diào)整されます)

faq(faq)

    React Storybookは他のUI開発ツールとどう違うのですか?
  • React Storybookを使用すると、開発者はコンポーネントを個別に構(gòu)築できるようになり、開発プロセスがより速く効率的になり、リアルタイムの視覚テスト環(huán)境を提供できます。
  • 他のJavaScriptフレームワークでReact Storybookを使用できますか?
  • はい、Vue.jsやAngularなどのフレームワークをサポートしています。
  • 私のストーリーブックにアドオンを追加する方法は? NPMまたはYARNを介してインストールし、
  • ファイルに追加し、ドキュメントに従って構(gòu)成します。 .storybook/addons.jsReact Storybookの學(xué)習(xí)曲線は何ですか?
  • JavaScriptに精通して反応する場合は、すぐに開始できるはずです。
  • 大規(guī)模なプロジェクトにReact Storybookを使用できますか?
  • はい、Airbnb、IBM、Lyftなどの大規(guī)模な組織で使用されています。
  • 私のストーリーブックを他の人と共有する方法は?
  • GitHubページなどの靜的マネージドサービスに展開したり、StoryBook Deployerを使用してNetLifyを使用したりできます。
  • React Storybookでコンポーネントをテストできますか?
  • はい、視覚的なテスト環(huán)境を提供し、Jestなどのテストライブラリと統(tǒng)合できます。
  • ストーリーブックの外観をカスタマイズする方法は?
  • ストーリーブックは、テーマのカスタマイズ、カスタムWebpack構(gòu)成、カスタムアドオンの作成などのオプションを提供します。
  • モバイルアプリケーション開発にReact Storybookを使用できますか?
  • はい、それはReactネイティブをサポートします。
  • React Storybookはオープンソースですか?
  • はい、それはGithubでホストされており、世界中の開発者からの貢獻を歓迎します。
  • 要するに、元のテキストは、より簡潔でスムーズにするために大いに書き直され、元の意味を維持しました。 畫像形式は同じままです。

以上がReact Storybook:美しいユーザーインターフェイスを簡単に開発しますの詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Java vs. JavaScript:混亂を解消します Java vs. JavaScript:混亂を解消します Jun 20, 2025 am 12:27 AM

JavaとJavaScriptは異なるプログラミング言語であり、それぞれ異なるアプリケーションシナリオに適しています。 Javaは大規(guī)模なエンタープライズおよびモバイルアプリケーション開発に使用されますが、JavaScriptは主にWebページ開発に使用されます。

JavaScriptコメント:短い説明 JavaScriptコメント:短い説明 Jun 19, 2025 am 12:40 AM

JavaScriptcommentsEareEssentialential-formaining、およびGuidingCodeexecution.1)single-linecommentseared forquickexplanations.2)多LinecommentsexplaincomplexlogiCorprovidededocumentation.3)clarifyspartsofcode.bestpractic

JSで日付と時間を操作する方法は? JSで日付と時間を操作する方法は? Jul 01, 2025 am 01:27 AM

JavaScriptで日付と時間を処理する場合は、次の點に注意する必要があります。1。日付オブジェクトを作成するには多くの方法があります。 ISO形式の文字列を使用して、互換性を確保することをお勧めします。 2。時間情報を取得および設(shè)定して、メソッドを設(shè)定でき、月は0から始まることに注意してください。 3.手動でのフォーマット日付には文字列が必要であり、サードパーティライブラリも使用できます。 4.ルクソンなどのタイムゾーンをサポートするライブラリを使用することをお勧めします。これらの重要なポイントを習(xí)得すると、一般的な間違いを効果的に回避できます。

なぜの下部にタグを配置する必要があるのですか? なぜの下部にタグを配置する必要があるのですか? Jul 02, 2025 am 01:22 AM

PLACSTHETTHETTHE BOTTOMOFABLOGPOSTORWEBPAGESERVESPAGESPORCICALPURPOSESESFORSEO、userexperience、andDesign.1.IthelpswithiobyAllowingseNStoAccessKeysword-relevanttagwithtagwithtagwithtagwithemaincontent.2.iTimrovesexperiencebyepingepintepepinedeeping

JavaScript vs. Java:開発者向けの包括的な比較 JavaScript vs. Java:開発者向けの包括的な比較 Jun 20, 2025 am 12:21 AM

javascriptispreferredforwebdevelopment、whilejavaisbetterforlge-scalebackendsystemsandroidapps.1)javascriptexcelsininintingtivewebexperiences withitsdynAmicnature anddommanipulation.2)javaofferstruntypyping-dobject-reientedpeatures

JavaScript:効率的なコーディングのためのデータ型の調(diào)査 JavaScript:効率的なコーディングのためのデータ型の調(diào)査 Jun 20, 2025 am 12:46 AM

javascripthassevenfundamentaldatypes:number、string、boolean、undefined、null、object、andsymbol.1)numberseadouble-precisionformat、有用であるため、有用性の高いものであるため、but-for-loating-pointarithmetic.2)ストリングリムムット、使用率が有用であること

DOMでのイベントの泡立ちとキャプチャとは何ですか? DOMでのイベントの泡立ちとキャプチャとは何ですか? Jul 02, 2025 am 01:19 AM

イベントキャプチャとバブルは、DOMのイベント伝播の2つの段階です。キャプチャは最上層からターゲット要素までであり、バブルはターゲット要素から上層までです。 1.イベントキャプチャは、AddEventListenerのUseCaptureパラメーターをTrueに設(shè)定することにより実裝されます。 2。イベントバブルはデフォルトの動作であり、UseCaptureはfalseに設(shè)定されているか、省略されます。 3。イベントの伝播を使用して、イベントの伝播を防ぐことができます。 4.イベントバブルは、動的なコンテンツ処理効率を改善するためにイベント委任をサポートします。 5.キャプチャを使用して、ロギングやエラー処理など、事前にイベントを傍受できます。これらの2つのフェーズを理解することは、タイミングとJavaScriptがユーザー操作にどのように反応するかを正確に制御するのに役立ちます。

JavaとJavaScriptの違いは何ですか? JavaとJavaScriptの違いは何ですか? Jun 17, 2025 am 09:17 AM

JavaとJavaScriptは、異なるプログラミング言語です。 1.Javaは、エンタープライズアプリケーションや大規(guī)模なシステムに適した、靜的に型付けされ、コンパイルされた言語です。 2。JavaScriptは動的なタイプと解釈された言語であり、主にWebインタラクションとフロントエンド開発に使用されます。

See all articles