PyTorchを使用して最初からニューラルネットワークを構築する方法

PyTorchを使用して最初からニューラルネットワークを構築する方法

この記事では、ニューラルネットワークの内部を調べて、ニューラルネットワークをゼロから構築する方法を学びます。 ディープラーニングで私が最も興奮することの1つは、コードをいじってゼロから何かを構築することです。ただし、これは簡単な作業ではなく、他の人にその方法を教えることはさらに困難です。私はFast.aiコースを進めてきましたが、このブログは私の経験に大きく影響を受けています。さらに遅れることなく、ニューラルネットワークの謎を解く素晴らしい旅を始めましょう。ニューラルネットワークはどのように機能しますか?ニューラルネットワークの高レベルの働きを理解することから始めましょう。ニューラルネットワークはデータセットを取り込み、予測を出力します。それはそれと同じくらい簡単です。例を挙げましょう。友達の1人(サッカーの大ファンではない)が有名なサッカー選手の古い写真を指差して、リオネルメッシと言って彼について尋ねたとします。すぐにサッカー選手を特定できるようになります。その理

続きを読む
ReactNativeとExpoを使用してReduxをアプリケーションに統合する方法

ReactNativeとExpoを使用してReduxをアプリケーションに統合する方法

ReduxはReactNativeエコシステムの重要な部分です。あなたの世界がJavaScriptを中心に展開しているなら、おそらくReduxについて聞いたことがあるでしょう。チュートリアルの残りの部分を読んで先に進む前に、Reduxについてのみ学習していることを覚えておいてください。これにより、作業が簡単になり、難しくなることはありません。それでは、アプリケーションにReduxが必要な理由を学びましょう。Reduxの必要性データを処理する適切な方法がない場合、現実の世界でReactまたはReactNativeアプリケーションを構築することは複雑になる可能性があります。いずれかの時点でデータが管理されていない場合、物事は手に負えなくなります。ReactまたはReactNativeに精通している場合、データを処理するデフォルトの方法は、データをコンポーネント状態に保ち、子コンポーネントに小道具として渡すことです。状態と小道具は、コンポーネント内のデータを制御する唯一の2つの方法です。小道具はプロパティの略です。Reactの世界では、小道具の値を変更したり変更したりしないというのは簡単なルールです。Reactでは、データの流れは一方向または一方向です。つまり、データは常に親コンポーネントから子コンポーネントに渡すことができます。この簡単な例を以下で見てください。上記の例では、2つのコンポー

続きを読む
Vueコンポーネントライブラリを作成して公開する方法

Vueコンポーネントライブラリを作成して公開する方法

最近、コンポーネントライブラリが大流行しています。これらにより、アプリケーション全体で一貫したルックアンドフィールを簡単に維持できます。私はこれまでさまざまなライブラリを使用してきましたが、ライブラリを使用することは、ライブラリを作成するために何が行われるかを正確に知ることとは大きく異なります。 コンポーネントライブラリがどのように構築されているかをより深く理解したかったので、どのようにしてよりよく理解できるかをお見せしたいと思います。このコンポーネントライブラリを作成するには、vue-sfc-rollupnpmパッケージを使用します。このパッケージは、コンポーネントライブラリを起動するときに非常に便利なユーティリティです。ユーティリティを使用する既存のライブラリがある場合は、それらが提供するドキュメントを参照してください。 このパッケージは、プロジェクトを開始するための一連のファイルを作成します。ドキュメントで説明されているように、作成されるファイルには次のものが含まれます(SFCはSingle File Componentの略です)。最小限のロールアップ構成ビルド/開発スクリプトと依存関係を持つ対応するpackage.jsonファイルトランスパイル用の最小限のbabel.config.jsおよび.browserslistrcファイルSFCをパッケージ化するときにロールアップで使用さ

続きを読む
単一要素パターンの紹介

単一要素パターンの紹介

Reactやその他のコンポーネントベースのライブラリを使用して信頼性の高いビルディングブロックを作成するためのルールとベストプラクティス。2002年に、私がWeb用のものを作成し始めたとき、私を含むほとんどの開発者は、 le> tags.Only in 2005 did I start following web standards.Original textContribute a better translationWhen a web site or web page is described as complying with web standards, it usually means that the s

続きを読む
初心者向けの高速で簡単なDockerチュートリアル(ビデオシリーズ)

初心者向けの高速で簡単なDockerチュートリアル(ビデオシリーズ)

Dockerは初めてですか?次に、このビデオシリーズは、基本を説明し、プロントを始めるのに役立ちます。次のビデオは、Dockerを初めて使用する人が基本を理解できるようにすることを目的としています。コーディングをすばやく行うことができるように、基本事項のみを取り上げようとしているため、ビデオは簡潔です。いくつかの背景情報。これらのビデオは元々、私の雇用主(Flipp Corp.)がDockerの伝道を支援するために作成したものですが、ここでも役立つのではないかと思いました。私はDocker(およびスクリーンキャストの作成)にかなり慣れていません。これらのビデオに入れたものの多くは、他の人には欠けているものでした。以下のコメントにコメントや提案を残してください。ありがとう!パート1:Dockerと重要な概念とは(13分)この最初のビデオでは、Dockerが存在する理由と、Dockerが解決するように設計されている問題について説明しています。Dockerが高レベルでどのように機能するか、およびいくつかの重要な概念(Dockerイメージ、コンテナー、およびDockerfile)について説明します。パート2:MacでDockerを使い始める

続きを読む
コードの可読性を向上させるために列インデントを使用する必要がある理由

コードの可読性を向上させるために列インデントを使用する必要がある理由

プログラミングの最も重要な側面は、あなたが書いたり維持したりするソースコードの読みやすさだと思います。これには、プログラミング言語の構文から、変数名、コメント、インデントまで、多くのことが含まれます。ここでは、これらの最後の1つであるインデントについて説明します。インデントのサイズ、タブとスペースの選択、Pythonなどの言語で必要かどうかではありません。多くの人は、コードの各行に最大行長(通常は80文字または120文字)を使用することを好みます。このアイデアでは、最大の長さはなく、水平スクロールバーを使用する必要がある場合があります。しかし、びっくりしないでください。コード全体ではなく、コードの一部だけです。コードインデントを使用した改善の4つの例最初の例このコードを見てください:読みやすさはあまり良くありません、そしてあなたは混乱を避けるためにこのようなものになってしまうかもしれません:そして、あなたの7行はほぼ40行になりました。これには、オブジェクトごとに3つまたは4つのプロパティがあります。8物件だと70行になります。私が話しているアイデアは、次のようなものを使用することです(私はこれを「列インデント」コードと呼びます)。2番目の例オブジェクトリテラルだけではありません。これは、類似した行のグループである任意のコードに使用できます。このプロセスは迅速です。最初の行をコピーして

続きを読む
新しいことを効果的に学び、楽しむ方法

新しいことを効果的に学び、楽しむ方法

ソフトウェアエンジニアリングで働くということは、常に新しいことを学ぶことを意味します。新しいテクノロジー、ツール、パラダイムを常に最新の状態に保つ必要があります。これは仕事の最も美しい側面の1つですが、最も難しい側面の1つでもあります。私たちはいつも忙しく、自由な時間がほとんどなく、職場で何か新しいことを学ぶのは難しいかもしれません。私は勉強と研究が好きですが、このため、私は自分が始めたものをすべて完了するのに苦労しました。学びたいことがいつも多すぎるので、頻繁に移動しました。時間とエネルギーを浪費していることに気づいたら、自由な時間に新しいことを効果的に学ぶための簡単なルールをいくつか作成しました。お役に立てば幸いです!?あなたが何か、あなたが学びたいものを選択しなかったしなければならない学びます最初のステップは、何を学ぶかを決めることです。私のルール:あなたがこの瞬間に学びたいことを選んだ。これは、それがあなたの仕事に関連してはならないことを意味します。もしそうなら、それは良いことです。しかし、自分を押し付けないでください。あなたが学んだことは、何らかの形でプロとしてのあなたを向上させるでしょう。あなたが私のようであるならば、あなたが学び始めたいと思う少なくとも10の新しいことがあります。それは問題です:最初に何を選ぶべきですか?簡単な答えはありません、私の友人…しかし、ゲームを少

続きを読む
ReactのURLに基​​づいて画像を見つけることができません

ReactのURLに基​​づいて画像を見つけることができません

Reactを初めて使用し、ローカルに保存されている画像にアクセスできない場合は、あなただけではありません。次のようなコンポーネントの隣のディレクトリに画像が保存されているとします。/src /components - component1 - component2 /img - img1 - img2そして、あなたは/imgディレクトリ内の画像にアクセスしようとしていますcomponent2:import React, { Component, useState, useEffect } from 'react'; import { render } from 'react-dom' import { useTransition, animated, config } from "react-spring"; import imgArr from './images'; import '../App.css'; const Slideshow = () => { const [index, set] = useState(0) const transitions = useTransition(imgArr[index], item => item.id, { from: { opacity: 0 }, enter: {opacity: 1 }, leave: { opac

続きを読む
逆三角形アーキテクチャ:大規模なCSSプロジェクトを管理する方法

逆三角形アーキテクチャ:大規模なCSSプロジェクトを管理する方法

あなたはあちこちでいくつかの小さなスタイリングの問題を修正するための小さなタスクを割り当てられています。修正を適用するための正しいCSSルールが見つかったので、それらのルールをCSSファイルの下部にすばやくドロップし、変更をプッシュしてから、より重要なものに進みます。時間が経つにつれて、これは数回発生します。CSSファイルの「下部」は、数百行のコードで構成されており、誰も理解できず、必然的に問題が発生するため、誰も削除しようとはしません。これを自分で行ったか、同僚がこれを行っているのを見たので、このシナリオを認識していますか?これを読んで、これを二度と行わないことを約束してください。CSSファイルを管理する簡単な方法がここにあるからです。逆三角形アーキテクチャの紹介ITCSSとも呼ばれる逆三角形アーキテクチャは、CSSを最も効果的で無駄の少ない方法で構造化するための方法論です。ITCSSはハリーロバーツによって最初に導入され、逆さまの層状の三角形によって最もよく視覚化できます。ITCSSは、プロジェクトの共有CSSルールを論理的かつ適切な方法で定義すると同時に、非共有CSSルールが相互に干渉するのを防ぐ確実なレベルのカプセル化と分離を提供します。ITCSSは、SMACCS、OOCSS、BEMなどの特定の命名規則手法を使用する必要がないため、非常に柔軟性があります。原則ITCSSは、次の

続きを読む
Bashスクリプトを使用して、AWSS3バケットからのファイルのダウンロードと表示を管理する方法

Bashスクリプトを使用して、AWSS3バケットからのファイルのダウンロードと表示を管理する方法

この記事で読むことができるように、私は最近、私の電子メールサーバーに問題があり、電子メール管理をAmazonのSimple Email Service(SES)にアウトソーシングすることにしました。 そのソリューションの問題は、SESに新しいメッセージをS3バケットに保存させ、AWSマネジメントコンソールを使用してS3バケット内のファイルを読み取ると非常に速く古くなることでした。 そこで、新しいメッセージのダウンロード、適切な保存、表示のプロセスを自動化するBashスクリプトを作成することにしました。このスクリプトをUbuntuLinuxデスクトップで使用するために作成しましたが、Windows SubSystem forLinuxを介してmacOSまたはWindows10システムで機能させるために、それほど手間をかける必要はありません。これが完全なスクリプトです。少し時間を取って確認した後、一度に1ステップずつ説明します。#!/bin/bash # Retrieve new messages from S3 and save to tmpemails/ directory: aws s3 cp \ --recursive \ s3://bucket-name/ \ /home/david/s3-emails/tmpemails/ \ --profile myaccount # Set

続きを読む
Webpack4とBabel7を組み合わせて素晴らしいReactアプリを作成する方法

Webpack4とBabel7を組み合わせて素晴らしいReactアプリを作成する方法

以前、「Webpack4を征服して甘いReactアプリを構築する方法」という記事を書きました。私が記事を書いた直後に、babelは大きな重大な変更を加えて急襲し、パッケージの多くは非推奨になりました。そこで、新しいチュートリアルを書くことにしました。コード分​​割とともに.scssをサポートするreactを使用したwebpackのセットアップに焦点を当てますこれをもう一度書く目的は単純です:私は誰もが快適に感じることを望んでいます。webpackの設定は非常に困難な場合があるためです。特に新しい開発者にとっては。従うと、困難で恐らく恐ろしいと思われたものがケーキのように見えます。始める前に、ここにソースコードがあります。私はこれがそれにたくさんのものを持っていることを知っています。同じコードベースを使用して、webpack、react、

続きを読む
収穫、収量、およびスケーラブルな耐性システム:要約

収穫、収量、およびスケーラブルな耐性システム:要約

この記事では、1999年にEric Brewer&Amando Foxが発行した論文「収穫量、収量、およびスケーラブルな耐性システム」の概要を示します。属性のない引用はすべてこの論文からのものです。このホワイトペーパーでは、大規模システムの整合性と可用性(CAP)の間のトレードオフについて説明します。CAPを指して、一貫性と可用性を備えたシステムはないと主張するのは非常に簡単です。しかし、落とし穴があります。CAPはさまざまな方法で誤解されてきました。Coda Haleが彼の優れたブログ投稿で説明しているように、「パーティションの許容範囲を犠牲にすることはできません」:CAP定理の一貫性、可用性、およびパーティショントレランスのうち、パーティショントレランスは分散システムで必須です。あなたはそれを選ぶことはできません。CAPの代わりに、歩留まり(正常に応答された要求の割合)と収穫(実際に応答に含まれる必要なデータの割合)の観点から可用性を検討し、障害が発生したときにシステムが犠牲にするのはこれら2つのうちどちらかを検討する必要があります。このホワイトペーパーでは、障害の許容、封じ込め、および分離によって大規模システムの可用性を高めることに焦点を当てています。クライアントがサーバーにクエリを実行すると想定します。この場合、正しい動作には少なくとも2つのメトリックがあります。リクエストを完

続きを読む
これは、すべての主要なプログラミング言語のHelloWorldアプリの例です-すべて1つのGitHubリポジトリにあります

これは、すべての主要なプログラミング言語のHelloWorldアプリの例です-すべて1つのGitHubリポジトリにあります

プログラミングを学び始めたとき、または単に新しいプログラミング言語を学んでいるときに最初に指示されることの1つは、本当に簡単なことをすることです。最初に行う手順の1つは、簡単なテキストを印刷することです。これを読んでいると、どのテキストが最も一般的で、私が参照しているのかがわかるかもしれません。私が話しているテキストはHelloWorldです。このテキストは、あなたが重要な旅に出たばかりなので、世界に挨拶する方法としてあなたのためにあるはずです。可能な限り学ぶ旅。GitHubリポジトリは、同じ手順がさまざまなプログラミング言語でどのように行われるかを他の人が確認できるように、多くのプログラミング言語から例を取り、それらを一般的なものに配置してすでに準備されています。Java、JavaScript、Python、Ruby、C ++、および他の多くの言語で実装されたこの単純なタスクは、すでにそこにあります。これまで、このリポジトリは、多くのプログラミング言語に多大な貢献をしてきました。その多くで、あなたや私はこれまで聞いたことがないかもしれません。これはオープンソースであり、そこにリストされていない他のプログラミング言語を知っている場合は、それに貢献することもできます。

続きを読む
この無料の1時間コースでUIデザインの基礎を学びましょう

この無料の1時間コースでUIデザインの基礎を学びましょう

GarySimonによるUIデザインの基礎に関するこの無料のScrimbaコースを開始したことをお知らせします。 コースの立ち上げ:UIデザインの基礎を学びますか?すべてのフロントエンド開発者は、基本的なUIデザインスキルを持っている必要があると考えています。だからこれで?もちろん、@ designcoursecomはあなたにそれを教えます。HTML&CSSだけで、デザインツールを使用せずにすべて。RTは高く評価されていますか?// t.co / mT9fDjShUd#100daysofcode—スクリンバ(@scrimba)2020年1月28日 ゲイリーは過去20年間、UIデザイナーおよびフロントエンド開発者であり、非常に人気のあるYouTubeチャンネルDesignCourseも運営しています。わずか1時間で、Garyは、すべての優れたユーザーインターフェイスの7つの最も重要な構成要素を把握できるようにすることで、UIデザインスキルをレベルアップします。空白色コントラスト規模配置タイポグラフィ視覚的階層このコースには、講義とインタラクティブなコーディングの課題が混在しています。つまり、実際にブラウザでUIを構築します。したがって、登録する前に、HTMLとCSSの基本を理解する必要があります

続きを読む
落ち着いてボックスをハックする-ブルー

落ち着いてボックスをハックする-ブルー

Hack The Box(HTB)は、侵入テストのスキルをテストできるオンラインプラットフォームです。 常に更新されるいくつかの課題が含まれています。それらのいくつかは現実世界のシナリオをシミュレートし、それらのいくつかはCTFスタイルの挑戦に傾倒しています。注:リタイアしたHTBマシンの書き込みのみが許可されます。Blueは、Hack TheBoxで最もシンプルなマシンの1つです。しかし、これは、大規模なランサムウェアや暗号マイニング攻撃を通じて企業を危険にさらすために使用されてきたEternalBlueエクスプロイトの影響を示しています。次のツールを使用して、KaliLinuxボックスでボックスをポーンします。nmapsearchsploitmetasploitMeterpreter始めましょう。まず、/ etc / hostsファイルにBlueを追加します。nano /etc/hostsと10.10.10.40 blue.htbステップ1-偵察マシンを悪用する前の最初のステップは、スキャンと偵察を少し行うことです。これは、後で何を悪用できるかを決定するため、最も重要な部分の1つです。できるだけ多くの情報を取得するために、このフェーズにより多くの時間を費やすことをお勧めします。ポートスキャンNmap(ネットワークマッパー)を使用します。Nmapは、ネットワーク検出とセキュリティ監査

続きを読む
コーディングを学んでいるときに成功するための10のヒント

コーディングを学んでいるときに成功するための10のヒント

この投稿は、もともとCoder-Coder.comで公開されました。コーディングの方法を自分で学んでいる場合は、始めたときに答えよりも多くの質問があるかもしれません。何を学ぶ必要がありますか?バグを修正する方法をどのように理解しますか?そして、それが不可能な仕事のように思えるとき、どうやってやる気を維持しますか?コーディングが成功する可能性が心配な場合は、心配しないでください。これらの10のヒントをチェックしてください—彼らがあなたを励まし、やる気にさせることを願っています!1.具体的な目標を念頭に置いてください。コーダーになりたい人からよく寄せられる質問の1つは、「どの言語を学ぶべきか」です。それは理解できますが、これは最終的には最初から間違った質問です。あなたが本当に尋ねるべき最初の質問は、「コーディングを学ぶことにおける私の最終目標は何ですか?」です。それは休暇を取るようなものです—行きたい特定の場所がなければ誰も休暇に行きません。そして、コーディングを学ぶためだけにコーディングを学んでいる人は誰もいません。常に理由があります。あなたはコーディングを学びたい…何?時間をかけて、最終的な目標を考えてください。それを手に入れたら、後戻りして、それを達成するために何をする必要があるかを理解することができます!コーディングを学ぶ上でのあなたの目標が何であるかまだわかりませんか?一般的なも

続きを読む
MEANスタックを学ぶ本当の理由:エンプロイアビリティ

MEANスタックを学ぶ本当の理由:エンプロイアビリティ

より多くのコーディングブートキャンプ(Hack Reactorなど)とオンラインコースプラットフォーム(Khan Academyなど)が、指導言語としてJavaScriptに切り替えています。とにかくそれを学ぶ必要があるので、JavaScriptは第一言語として理にかなっています。それなしではウェブ上で多くのことを行うことはできないので、人々はますますJavaScriptに直行し、Ruby、Python、PHPをスキップするようになっています。JavaScriptは、最も活発な開発者コミュニティも誇っています。しかし、JavaScriptをすぐに学ぶ必要がある3つ目の理由は、エンプロイアビリティです。雇用主はJavaScriptの才能に飢えているだけでなく、特定のJavaScriptベースのテクノロジーに精通しているエンジニアにも飢えています。そして、それらのテクノロジーは、MEANスタックを構成するテクノロジーです— MongoDB、Express.js、Angular.js、Node.js。始める前に、これらのデータは、求人情報の最大のアグリゲーターであるIndeed.comからのものであることに注意してください。求人情報の量の代理として、求人情報の量を使用しています。Oracle、Microsoft、IBMなどの非独占的なソリューションにのみ焦点を当てました。Model-View

続きを読む
コンピュータネットワーク—Tracerouteの説明

コンピュータネットワーク—Tracerouteの説明

ウィキペディアによると、traceroute次のとおりです。ルート(パス)を表示し、インターネットプロトコル(IP)ネットワークを介したパケットの通過遅延を測定するためのコンピューターネットワーク診断ツール。ルートの履歴は、ルート(パス)内の連続する各ホスト(リモートノード)から受信したパケットのラウンドトリップ時間として記録されます。各ホップの平均時間の合計は、接続を確立するために費やされた合計時間の尺度です。Tracerouteは、送信されたすべてのパケット(3つ)が2回以上失われない限り続行され、接続が失われ、ルートを評価できなくなります。一方、pingは、宛先ポイントからの最終ラウンドトリップ時間のみを計算します。traceroute データをダウンロードするための最速のソースを見つけるために使用でき、侵入テスターがネットワークに関する情報を収集するためによく使用されます。データがインターネット上をどのように移動するかtraceroute上の各コンピューターは、そのIPアドレスまたは固有のネットワーク接続によって識別されます。- The journey from one computer to another is known as a hop. - The amount of time it takes to make a hop is measured in millise

続きを読む
2017年の主力携帯電話はすべて、明白な妥協点があります。これが彼らがデザインについて教えてくれることです。

2017年の主力携帯電話はすべて、明白な妥協点があります。これが彼らがデザインについて教えてくれることです。

9月12日、TimCookはiPhoneXを発表しました。10周年記念のiPhoneは、美しい新しいデザインの「ベゼルレス」5.8インチスクリーンを備えています。これは、3D画像と赤外線を使用するFace IDと呼ばれる新しい顔認識技術を備えています。つまり、暗闇でも使用でき、指紋スキャンよりも正確です(双子でない限り)。Appleはそれがスマートフォンの未来であると主張している。ただし、問題があります。iPhone Xには、私たちをじっと見つめているデザインの妥協点があります。iPhone Xの「ベゼルのない」画面は、丸みを帯びた端から端まで実行されますが、画面の上部に目立つノッチ(切り欠き)があります。ノッチには、FaceID認証を実行するために必要なイメージングシステムが収容されています。この一流のデザインは、他の点ではシームレスで美しい画面を壊します。それは奇妙なデザインの選択のように思えます—画面を犠牲にすることなしに新しいFaceIDの精度を達成することができないというAppleからの譲歩。さらに悪いことに、電話が横向きで使用される場合、ノッチは扱いにくいインターフェイスになります。iPhone Xをよく見ると、さらに多くの妥協点が見つかります。たとえば、Appleが指紋センサーを端から端までのディスプレイの下に配置しようとしましたが失敗しました。そして失敗したとき、電話の

続きを読む
JavaScriptでのオブジェクト指向プログラミングの紹介

JavaScriptでのオブジェクト指向プログラミングの紹介

この記事は、オブジェクト指向プログラミング(OOP)の予備知識がないJavaScriptの学生を対象としています。私は、JavaScriptにのみ関連し、一般的なOOPには関連しないOOPの部分に焦点を当てています。ポリモーフィズムは静的型の言語によく適合するため、スキップします。なぜあなたはこれを知る必要があるのですか?最初のプログラミング言語としてJavaScriptを選択しましたか?10万行以上のコードにまたがる巨大なエンタープライズシステムで作業するホットショットの開発者になりたいですか?オブジェクト指向プログラミングを完全に受け入れることを学ばない限り、あなたはうまくそして本当に失われるでしょう。異なる考え方サッカーでは、安全な防御からプレーしたり、側面からハイボールでプレーしたり、明日がないように攻撃したりすることができます。これらの戦略はすべて同じ目的を持っています:ゲームに勝つこと。同じことがプログラミングパラダイムにも当てはまります。問題に取り組み、解決策を設計するには、さまざまな方法があります。オブジェクト指向プログラミング(OOP)は、最新のアプリケーション開発のパラダイムです。Java、C#、JavaScriptなどの主要言語でサポートされています。オブジェクト指向パラダイムOOPの観点からは、アプリケーションは相互に通信する「オブジェクト」のコレクションです。

続きを読む
react-hook-formライブラリを使用してReactでフォームを作成する方法

react-hook-formライブラリを使用してReactでフォームを作成する方法

この記事では、react-hook-formライブラリについて説明します。このライブラリを使用してReactと統合する方法を学びます。また、複雑な検証の処理のサポートが追加された、単純なフォームと複雑なフォームの両方を構築するための一般的な選択肢になっている理由についても説明します。始めましょうReactでフォームを操作するのは複雑な作業です。また、検証とともに入力フィールドの数が増えると、さらに複雑になります。以下のコードを見てください。 import React, { useState } from "react"; import "./styles.css"; export default function App() { const [state, setState] = useState({ email: "", password: "" }); const handleInputChange = (event) => { setState((prevProps) => ({ ...prevProps, [event.target.name]: event.target.value })); }; const handleSubmit = (event) => { event.preventDefault(); console.log(state); };

続きを読む