この記事は、もともとOkta Developer Blogで公開されました。 SitePointを可能にしてくれたパートナーをサポートしてくれてありがとう。 Angular(以前はAngular 2.0と呼ばれていた)は、最新のシングルページアプリを構築する最も強力な方法の1つになりつつあります。コア強度は、再利用可能なコンポーネントを構築することにAngularの焦点であり、アプリケーションのさまざまな懸念を分離するのに役立ちます。たとえば、認証を取得してください:構築するのは苦痛ですが、コンポーネントにラップすると、アプリケーション全体で認証ロジックを再利用できます。 Angular CLIにより、新しいコンポーネント、さらにはプロジェクト全体を簡単に足場にすることができます。 Angular CLIを使用してAngular Codeをすばやく生成していない場合は、おやつを求めています!キーテイクアウト
すぐに足を踏み入れて、角CLIを使用して新しい角度アプリケーションを実行し、開発効率を高めます。
OKTAとOpenID Connectアプリをセットアップし、安全なユーザー管理を確保することにより、認証をシームレスに統合します。Angularの強力なコンポーネントシステムを利用して、検索機能を追加して編集してユーザーエクスペリエンスを強化します。
ルーティングを利用してアプリケーション内のナビゲーションを管理し、よりスムーズなユーザーフローとより良い状態管理を可能にします。フォーム検証を実装して、データの整合性を確保し、フィードバックを提供し、全体的な使いやすさを向上させます。 Angular's AuthGuardを使用して、機密情報を保護し、認証を実施するために、Angular's AuthGuardを使用してアプリケーションルートを安全に保護します。
- 角度アプリケーションを作成します
- ヒント:Angularアプリケーションの構築をスキップして認証を追加する場合は、NG-DEMOプロジェクトをクローンしてから、OKTAセクションでOpenID Connectアプリの作成をスキップできます。 >
- 必要なもの
- 約20分
- お気に入りのテキストエディターまたはIDE。 Intellijのアイデアをお勧めします
を使用することをお勧めします
Angular CLIがインストールされました。 Angular CLIがインストールされていない場合は、npmインストールを使用してインストールします-g @angular/cliNG新しいコマンドを使用して新しいプロジェクトを作成します:
<span>git clone https://github.com/mraible/ng-demo.git </span>
これにより、NG-DEMOプロジェクトが作成され、NPMインストールが実行されます。完了するまでに約1分かかりますが、接続速度によって異なる場合があります。
- ng -versionで使用しているAngular CLIのバージョンを見ることができます。
- 角度アプリケーションを実行します
- プロジェクトは、WebPack Dev Serverで構成されています。それを開始するには、NG-DEMOディレクトリにいることを確認して、次に実行してください。
<span>git clone https://github.com/mraible/ng-demo.git </span>
http:// localhost:4200で以下のような画面が表示されます。

検索機能を追加
ng new ng-demo
検索機能を追加するには、IDEまたはお気に入りのテキストエディターでプロジェクトを開きます。 Intellijのアイデアについては、ファイル>新しいプロジェクト> Static Webを使用して、NG-DEMOディレクトリを指してください。
端末ウィンドウで、プロジェクトのディレクトリにCDを入れて、次のコマンドを実行します。これにより、検索コンポーネントが作成されますsrc/app/search/search.component.htmlを開き、デフォルトのhtmlを次のものに置き換えます。
Angularのルータードキュメントは、生成したばかりのSearchComponentへのルートをセットアップするために必要な情報を提供します。簡単な要約を次に示します:
$ ng <span>--version </span> _ _ ____ _ ___ / <span>\ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _| </span> / △ <span>\ | '_ \ / _` | | | | |/ _` | '__| | | | | | | </span> / ___ <span>\| | | | (_| | |_| | | (_| | | | |___| |___ | | </span>/_/ <span>\_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___| </span> <span>|___/ </span>@angular/cli: <span>1.3.2 </span>node: <span>8.4.0 </span>os: darwin x64ルーティングセットアップがあるので、検索機能の書き込みを続けることができます。
まだNGサーブランニングがある場合、ブラウザは自動的に更新する必要があります。そうでない場合は、http:// localhost:4200に移動します。空白の画面が表示される可能性があります。 JavaScriptコンソールを開くと、問題が表示されます
これを解決するには、src/app/app.module.tsを開き、@ngmoduleのインポートとしてformsmoduleを追加してください:
ng serve検索フォームが表示されるはずです。
このコンポーネントにCSSを追加する場合は、src/app/search/search.component.cssを開き、CSSを追加します。たとえば、
$ ng <span>test </span><span>... </span>Chrome <span>60.0.3112 (Mac OS X 10.12.6): Executed 3 of 3 SUCCESS (0.239 secs / 0.213 secs) </span>
このセクションでは、Angular CLIを使用した基本的な角度アプリケーションに新しいコンポーネントを生成する方法を示しました。次のセクションでは、JSONファイルとLocalStorageを作成して使用して偽のAPIを作成する方法を示します。
検索結果を取得するには、JSONファイルにHTTPリクエストを作成するSearchServiceを作成します。新しいサービスを生成することから始めます。

生成されたSearch.service.tsとそのテストをApp/共有/検索に移動します。このディレクトリを作成する必要があります。
$ ng g component search installing component create src/app/search/search.component.css create src/app/search/search.component.html create src/app/search/search.component.spec.ts create src/app/search/search.component.ts update src/app/app.module.ts
SRC/Assets/Data/People.jsonを作成して、データを保持します

これらのクラスをコンポーネントで消費できるようにするには、src/app/shared/index.tsを編集して、次を追加します。
<span>git clone https://github.com/mraible/ng-demo.git </span>このファイルを作成する理由は、個々のクラスを別々の行にインポートする必要があるのではなく、単一行に複数のクラスをインポートできるようにするためです。
クエリと検索の変数を追加できるようになりました。あなたがそこにいる間、コンストラクターを変更してSearchServiceを注入します。
ng new ng-demoその後、Search()メソッドを実装して、サービスのgetAll()メソッドを呼び出します。
この時点で、ブラウザのコンソールに次のメッセージが表示される可能性があります。
<span>[mraible:~/dev] $ ng new ng-demo </span>installing ng create .editorconfig create README.md create src/app/app.component.css create src/app/app.component.html create src/app/app.component.spec.ts create src/app/app.component.ts create src/app/app.module.ts create src/assets/.gitkeep create src/environments/environment.prod.ts create src/environments/environment.ts create src/favicon.ico create src/index.html create src/main.ts create src/polyfills.ts create src/styles.css create src/test.ts create src/tsconfig.app.json create src/tsconfig.spec.json create src/typings.d.ts create .angular-cli.json create e2e/app.e2e-spec.ts create e2e/app.po.ts create e2e/tsconfig.e2e.json create .gitignore create karma.conf.js create package.json create protractor.conf.js create tsconfig.json create tslint.json Successfully initialized git. Installing packages <span>for tooling via npm. </span>Installed packages <span>for tooling via npm. </span>You can <span><span>`ng set --global packageManager=yarn`</span>. </span>Project <span>'ng-demo' successfully created. </span><span>[mraible:~] 46s $ </span>
上から「プロバイダーなし」エラーを修正するには、app.module.tsを更新してSearchServiceをインポートし、プロバイダーのリストにサービスを追加します。 SearchServiceはHTTPに依存するため、HTTPModuleもインポートする必要があります。
$ ng <span>--version </span> _ _ ____ _ ___ / <span>\ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _| </span> / △ <span>\ | '_ \ / _` | | | | |/ _` | '__| | | | | | | </span> / ___ <span>\| | | | (_| | |_| | | (_| | | | |___| |___ | | </span>/_/ <span>\_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___| </span> <span>|___/ </span>@angular/cli: <span>1.3.2 </span>node: <span>8.4.0 </span>os: darwin x64[検索]ボタンをクリックすると動作するはずです。結果の見栄えを良くするには、
タグを削除し、src/app/search/search.component.htmlの
以上がアプリでOpenID ConnectとOKTAを使用したAngular認証をセットアップの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。

JavaScriptエンジンが内部的にどのように機能するかを理解することは、開発者にとってより効率的なコードの作成とパフォーマンスのボトルネックと最適化戦略の理解に役立つためです。 1)エンジンのワークフローには、3つの段階が含まれます。解析、コンパイル、実行。 2)実行プロセス中、エンジンはインラインキャッシュや非表示クラスなどの動的最適化を実行します。 3)ベストプラクティスには、グローバル変数の避け、ループの最適化、constとletsの使用、閉鎖の過度の使用の回避が含まれます。

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

Dreamweaver Mac版
ビジュアル Web 開発ツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。
