RXJSを使っている反応またはVueのAPIサービス


-について

  • どのような角度でのサービスですか?
  • なぜRxjs?
  • 反応またはVueでサービスをつくる方法
  • 反応コンポーネントでサービスを使う方法
  • 1 .アングルのサービスは何ですか?


    サービスは、お互いを知らないクラスの間で情報を共有する素晴らしい方法です.サービスを使用することで、できるようになります
  • 取得データは、アプリケーション内の任意のコンポーネントをフォーム
  • Rxjs演算子などを使用します.
  • 国家管理(科目を使用)として使用する
  • きれいで美しいコードを
  • なぜRxjs


    RXJSは任意のフレームワークや純粋なJavaScriptで使用することができます.
    これはVueに関する次のコードを意味します.バニラ
    RXJSは観測可能なシーケンスを用いた非同期およびイベントベースプログラムを構成するためのライブラリである
    RXJs数学的な、変換、フィルタリング、ユーティリティ、条件、エラー処理の演算子の巨大なコレクションを提供し、反応のプログラミングで使用するときに簡単に人生を作るカテゴリに参加.

    3 .反応またはVueでサービスを作成する方法

  • 次のライブラリのインストール
  • $ npm install axios rxjs axios-observable
    
  • すべてのAPIサービスを含むフォルダを作成するservicesそして、私もsrc/srviceでそれを作成します、それはあなたが望むどこで、それを作成することは重要でありません.
  • クリエイト.ts or .js ファイル名を付けますtask.ts (ここではスクリプトを使っていますから).
  • import Axios, { AxiosObservable } from "axios-observable";
    
    class TaskService {
    
        private static _instance: TaskService;
    
        public static get Instance() {
            return this._instance || (this._instance = new this());
        }
    
    /////...code here
    
    }
    
    
    export const _TaskService=TaskService.Instance;
    
    
    だからここで我々は使用できるようにSingletonクラスを作成するSubjects 後で、各コンポーネントのクラスのオブジェクトを作るよりも良いです.
    あなたのAPI呼び出しを書きます、私は単純なものを書きますCRUD
    import Axios, { AxiosObservable } from "axios-observable";
    
    class TaskService {
    
        private static _instance: TaskService;
    
        public static get Instance() {
            return this._instance || (this._instance = new this());
        }
    
      indexTask():AxiosObservable<any> {
       return Axios.get<any(`https://example.com/api/index`);
        }
    
      showTask(id:number):AxiosObservable<any> {
       return Axios.get<any(`https://example.com/api/show/${id}`);
        }
    
      storeTask(data:any):AxiosObservable<any> {
       return Axios.post<any(`https://example.com/api/store`,data);
        }
    
      updateTask(id:number,data:any):AxiosObservable<any> {
       return Axios.put<any(`https://example.com/api/update/${id}`,data);
        }
    
      deleteTask(id:number):AxiosObservable<any> {
       return Axios.delete<any(`https://example.com/api/delete/${id}`);
        }
    
    }
    
    
    
    
    export const _TaskService=TaskService.Instance;
    
    
    そして、我々はここでされます.

    反応コンポーネントでのサービスの使い方


    import { useEffect, useState } from "react";
    import { _TaskService } from "src/services/Task.Service";
    
    const Tasks = () => {
    
      const [tasks, settasks] = useState([]);
    
      useEffect(() => {
    
        _TaskService.indexTask().subscribe({
          next: (res) => settasks(res.data),
          error: (err) => console.log(err.response),
          complete: () => {},
        });
    
        return () => {};
      }, []);
    
      return (
        <div>
          {tasks.map((task: any, index: number) => {
            return <div key={index} > {task.name} </div>;
          })}
        </div>
      );
    };
    
    export default Tasks;
    
    
    
    終わり……
    あなたが反応するように切り替えている角度開発者であるならば、あるいは、Vueはあなたがこれを見つけることが幸せであると確信します.
    あなたがそうでないならば、私はあなたに特にRXJsについて読むことを提案します.

    便利なリンク🔗


    https://rxjs.dev/


    趙世陽 / アクシオス


    RXJSの方法でaxiosを使用してください。約束の代わりに観測できる


    アクシオス


    ブラウザとノードのための(可能な限り)約束のHTTPベースのクライアントを観察.js
    RXJS(観測可能)の方法でaxiosを使用しますか?そこに行く!
    Axios観測可能なAPIは、AxiosのAPIとほぼ同じです.それで、ドキュメントはaxiosの1つを反映します(いくつかの例外は指摘されます).

    機能

  • メイクXMLHttpRequests ブラウザから
  • メイクhttp ノードからのリクエスト.js
  • 観測可能APIをサポートする
  • インターセプトリクエスト
  • 変換要求と応答データ
  • (新しい1.1.1.0 )キャンセル要求を取り消す
  • JSONデータの自動変換
  • クライアント側のサポートを保護するXSRF
  • インストール


    NPMの使用
    注意:axios and rxjs は依存関係である.
    は、Axiosをインストールします


    演じるGET リクエスト
    ' axos観測可能'からインポートaxios;
    //' axos = require 'を実行します(' axiOS -観測可能').アクシオス
    //指定したIDを持つユーザのリクエストを作成する
    アクシオス.get (' user ?? id = 12345 ')
    ……
    View on GitHub
    .