主頁 > 企業開發 > Vue 組件之間傳遞引數

Vue 組件之間傳遞引數

2023-02-17 08:05:23 企業開發

一、Vue 2

  • 1、父組件向子組件傳值,使用 props:可以通過在子組件上系結 props,然后在父組件中通過 v-bind 系結相應的資料來傳遞資料,

父組件中的代碼:

<template>
  <div>
    <child-component :prop-a="dataA"></child-component>
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent,
  },
  data() {
    return {
      dataA: 'data from parent',
    };
  },
};
</script>

子組件中的代碼:

<template>
  <div>
    {{ propA }}
  </div>
</template>

<script>
export default {
  props: {
    propA: String,
  },
};
</script>
  • 2、子組件向父組件傳值,使用 $emit:可以通過在子組件中使用 $emit 觸發自定義事件,并在父組件中使用 v-on 監聽相應的事件來傳遞資料,

子組件中的代碼:

<template>
  <div>
    <button @click="sendDataToParent">Send Data To Parent</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      dataB: 'data from child',
    };
  },
  methods: {
    sendDataToParent() {
      this.$emit('send-data', this.dataB);
    },
  },
};
</script>

父組件中的代碼:

<template>
  <div>
    <child-component @send-data="https://www.cnblogs.com/yuzhihui/archive/2023/02/16/receiveDataFromChild"></child-component>
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent,
  },
  methods: {
    receiveDataFromChild(dataB) {
      console.log(dataB);
    },
  },
};
</script>
  • 3、兄弟組件之間傳值:可以通過使用一個共同的父組件,然后將需要共享的資料放在父組件的 data 中,再通過 props 將資料傳遞給各自的子組件,

父組件中的代碼:

<template>
  <div>
    <child-a :prop-a="dataA"></child-a>
    <child-b :prop-b="dataB"></child-b>
  </div>
</template>

<script>
import ChildA from './ChildA.vue';
import ChildB from './ChildB.vue';

export default {
  components: {
    ChildA,
    ChildB,
  },
  data() {
    return {
      dataA: 'data from parent to child a',
      dataB: 'data from parent to child b',
    };
  },
};
</script>

子組件 A 中的代碼:

<template>
  <div>
    {{ propA }}
  </div>
</template>

<script>
export default {
  props: {
    propA: String,
  },
};
</script>

子組件 B 中的代碼:

<template>
  <div>
    {{ propB }}
  </div>
</template>

<script>
export default {
  props: {
    propB: String,
  },
};
</script>
  • 4、跨級組件傳值,使用 provide 和 inject(該方法也可用于父子組件傳值):provide 可以在祖先組件中定義一個值或者方法,然后在子孫組件中使用 inject 來注入這個值或者方法,

祖先組件中的代碼:

<template>
  <div>
    <child-a></child-a>
  </div>
</template>

<script>
import ChildA from './ChildA.vue';

export default {
  components: {
    ChildA,
  },
  provide() {
    return {
      sharedData: 'data from ancestor',
    };
  },
};
</script>

子孫組件 A 中的代碼:

<template>
  <div>
    {{ sharedData }}
  </div>
</template>

<script>
export default {
  inject: ['sharedData'],
};
</script>
  • 5、使用全域事件總線:可以使用 Vue 的事件機制,通過在 Vue 實體上使用 $on 來監聽事件,然后在其他組件中使用 $emit 觸發相應的事件來傳遞資料,這種方式可以在任意組件之間傳遞資料,

在 main.js 中定義一個空的 Vue 實體作為事件總線:

import Vue from 'vue';

export const bus = new Vue();

子組件 A 中的代碼:

<template>
  <div>
    <button @click="sendDataToSibling">Send Data To Sibling</button>
  </div>
</template>

<script>
import { bus } from './main';

export default {
  methods: {
    sendDataToSibling() {
      bus.$emit('send-data', 'data from child a');
    },
  },
};
</script>

子組件 B 中的代碼:

<template>
  <div>
    {{ dataFromSibling }}
  </div>
</template>

<script>
import { bus } from './main';

export default {
  data() {
    return {
      dataFromSibling: '',
    };
  },
  mounted() {
    bus.$on('send-data', (data) => {
      this.dataFromSibling = data;
    });
  },
};
</script>
  • 6、使用 Vuex:當應用的資料狀態比較復雜或者需要在多個組件之間共享時,可以使用 Vuex,它是一個專為 Vue.js 應用程式開發的狀態管理模式,可以在任何組件中訪問和修改 Vuex 存盤的資料,通過 mutations 來修改狀態,通過 actions 來觸發 mutations,這種方式可以方便地在不同的組件中進行狀態管理和資料共享,

在 store.js 中定義一個 Vuex store:

import Vue from 'vue';
import Vuex from 'vuex';

Vue.use(Vuex);

const store = new Vuex.Store({
  state: {
    dataC: 'data from Vuex',
  },
  mutations: {
    updateDataC(state, payload) {
      state.dataC = payload;
    },
  },
});

export default store;

子組件 A 中的代碼:

<template>
  <div>
    <button @click="sendDataToSibling">Send Data To Sibling</button>
  </div>
</template>

<script>
import { mapMutations } from 'vuex';

export default {
  methods: {
    ...mapMutations(['updateDataC']),
    sendDataToSibling() {
      this.updateDataC('data from child a');
    },
  },
};
</script>

子組件 B 中的代碼:

<template>
  <div>
    {{ dataC }}
  </div>
</template>

<script>
import { mapState } from 'vuex';

export default {
  computed: {
    ...mapState(['dataC']),
  },
};
</script>
  • 7、父子組件傳值,使用 $attrs$listeners

$attrs 是一個包含了父組件傳遞給子組件的所有屬性的物件,可以在子組件中通過訪問 $attrs 來獲取這些屬性,如果不希望某些屬性傳遞到子組件中,可以在子組件中使用 v-bind="$attrs" 并指定排除的屬性名稱,或者在父組件中使用 .sync 修飾符,將屬性系結到子組件的一個名為 $attrs 的屬性上,

$listeners 是一個包含了父組件傳遞給子組件的所有事件監聽器的物件,可以在子組件中通過訪問 $listeners 來獲取這些事件監聽器,如果需要在子組件中監聽某個事件,可以使用 v-on="$listeners" 將所有的事件監聽器系結到子組件上,

$attrs 和 $listeners 是常用的兩個特殊屬性,它們可以用來向組件傳遞屬性和事件監聽器,假設我們有一個父組件和一個子組件,子組件需要接收父組件的一些屬性和事件監聽器,同時還需要把這些屬性和事件傳遞給子組件的某個子元素,

父組件中的代碼:

<template>
  <div>
    <child-component :title="title" v-on:click="handleClick" />
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: { ChildComponent },
  data() {
    return {
      title: 'Hello World',
    };
  },
  methods: {
    handleClick() {
      console.log('Button Clicked');
    },
  },
};
</script>

子組件中的代碼:

<template>
  <div>
    <button @click="$emit('click')">Click me</button>
    <div v-bind="$attrs">
      <slot />
    </div>
  </div>
</template>

<script>
export default {
  inheritAttrs: false,
  props: {
    title: {
      type: String,
      default: '',
    },
  },
  mounted() {
    console.log(this.$attrs);
    console.log(this.$listeners);
  },
};
</script>

在子組件中,我們使用 v-bind="$attrs" 把所有父組件傳遞過來的屬性系結到子元素上,同時,我們使用 $emit('click') 來觸發父組件傳遞過來的點擊事件,

在子組件 中,需要設定 inheritAttrs: false,來禁止自動將父組件傳遞的屬性系結到子組件的根元素上,這樣,我們就可以使用 v-bind="$attrs" 把所有屬性系結到子元素上,

在 mounted 鉤子中,我們可以通過 this.$attrsthis.$listeners 來分別訪問所有屬性和事件監聽器,這樣,我們就可以在子組件中使用這些屬性和事件了,

  • 8、使用 $refs:可以使用 Vue 提供的 $refs 屬性來獲取組件實體,然后通過呼叫組件的方法來進行資料傳遞,這種方式不推薦使用,因為不易維護和除錯,
  • 9、使用事件總線庫:可以使用 Vue.js 的第三方庫如 Event Bus、Tiny-Emmiter 等來傳遞資料,這些庫提供了一種方便、簡單的方式來在不同的組件之間進行事件傳遞,但是需要注意,使用第三方庫可能會增加專案的復雜性和維護成本,

二、Vue 3

  • 1、Props

Props 是一種在組件之間傳遞資料的方式,通過在組件標簽上使用屬性系結,父組件可以向子組件傳遞資料,在子組件中,通過在 props 中定義對應的屬性名,可以獲取到父組件傳遞過來的資料,

例如,父組件中的模板:

<template>
  <child-component :message="hello"></child-component>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  data() {
    return {
      hello: 'Hello from parent!'
    };
  }
};
</script>

子組件中的模板:

<template>
  <div>{{ message }}</div>
</template>

<script>
export default {
  props: {
    message: String
  }
};
</script>
  • 2、$emit 

$emit  是一種在子組件中觸發事件的方式,通過在子組件中使用 $emit 方法,可以向父組件發送資料,在父組件中,通過在子組件標簽上使用 v-on@ 語法,可以監聽子組件觸發的事件,并獲取子組件發送的資料,

例如,子組件中的模板:

<template>
  <button @click="sendMessage">Send Message</button>
</template>

<script>
export default {
  methods: {
    sendMessage() {
      this.$emit('message-sent', 'Hello from child!');
    }
  }
};
</script>

父組件中的模板:

<template>
  <child-component @message-sent="receiveMessage"></child-component>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  methods: {
    receiveMessage(message) {
      console.log(message);
    }
  }
};
</script>
  • 3、Provide/Inject

Provide/Inject 是一種在祖先組件和后代組件之間共享資料的方式,通過在祖先組件中使用 provide 方法提供資料,在后代組件中使用 inject 方法獲取資料,

例如,祖先組件中的模板:

<template>
  <child-component></child-component>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  provide() {
    return {
      message: 'Hello from ancestor!'
    };
  }
};
</script>

后代組件中的模板:

<template>
  <div>{{ message }}</div>
</template>

<script>
export default {
  inject: ['message']
};
</script>
  • 4、$attrs 和 $listeners

$attrs 和 $listeners 是在 Vue 2 中引入的特性,但在 Vue 3 中也得到了支持,

例如,父組件中的模板:

<template>
  <child-component message="Hello from parent!" @click="handleClick"></child-component>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  methods: {
    handleClick() {
      console.log('Clicked!');
    }
  }
};
</script>

子組件中的模板:

<template>
  <div v-bind="$attrs" v-on="$listeners">{{ message }}</div>
</template>

<script>
export default {
  props: {
    message: String
  }
};
</script>
  • 5、provide/inject 與 props 的結合使用

在 Vue 3 中,provide 和 inject 可以與 props 結合使用,從而實作一種高級的資料傳遞方式,具體做法是,在祖先組件中使用 provide 方法提供資料,并在后代組件中使用 inject 方法獲取資料;同時,在后代組件中,可以在 props 中宣告和接收資料,從而實作資料的型別檢查和默認值設定,

例如,祖先組件中的模板:

<template>
  <child-component></child-component>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  provide() {
    return {
      message: 'Hello from ancestor!'
    };
  }
};
</script>

后代組件中的模板:

<template>
  <div>{{ message }}</div>
</template>

<script>
export default {
  inject: ['message'],
  props: {
    message: {
      type: String,
      default: 'Hello from default!'
    }
  }
};
</script>

在上面的例子中,子組件會首先從祖先組件中獲取名為 message 的資料,如果沒有提供,則使用默認值 Hello from default!,在子組件中,props 會覆寫 provide/inject,因此如果父組件和子組件都提供了同一個屬性,子組件中的 props 值會覆寫 provide/inject 中的值,

  • 6、Vuex

Vuex 是一種專門用于管理應用程式狀態的庫,可以用于跨組件傳遞資料,在 Vuex 中,可以定義一個全域的狀態管理器,所有的組件都可以通過 getter 和 setter 方法訪問和修改這個狀態管理器中的資料,

例如,定義一個 Vuex store:

import { createStore } from 'vuex';

const store = createStore({
  state: {
    message: 'Hello from store!'
  },
  mutations: {
    updateMessage(state, message) {
      state.message = message;
    }
  },
  getters: {
    getMessage(state) {
      return state.message;
    }
  }
});

export default store;

在組件中使用 Vuex:

<template>
  <div>{{ message }}</div>
  <button @click="updateMessage">Update message</button>
</template>

<script>
import { mapGetters, mapMutations } from 'vuex';

export default {
  computed: {
    ...mapGetters(['getMessage'])
  },
  methods: {
    ...mapMutations(['updateMessage'])
  }
};
</script>

在這個例子中,組件通過 mapGetters 方法將 Vuex store 中的 getMessage 方法映射為組件中的計算屬性,從而獲取 Vuex store 中的資料;同時,通過 mapMutations 方法將 Vuex store 中的 updateMessage 方法映射為組件中的方法,從而修改 Vuex store 中的資料,

  • 7、EventBus

EventBus 是一種自定義事件總線,可以用于在任意組件之間傳遞資料,在 EventBus 中,可以定義一個全域的事件中心,所有的組件都可以通過 $on 和 $emit 方法監聽和觸發自定義事件,

例如,定義一個 EventBus:

import mitt from 'mitt';

const bus = mitt();

export default bus;

在組件中使用 EventBus:

<template>
  <div>{{ message }}</div>
  <button @click="updateMessage">Update message</button>
</template>

<script>
import bus from './event-bus';

export default {
  data() {
    return {
      message: 'Hello from component!'
    };
  },
  methods: {
    updateMessage() {
      this.message = 'New message!';
      bus.emit('message-updated', this.message);
    }
  },
  created() {
    bus.on('message-updated', message => {
      console.log(message);
    });
  }
};
</script>

在這個例子中,組件中的 updateMessage 方法通過 EventBus 的 emit 方法觸發了一個名為 message-updated 的自定義事件,并將修改后的訊息作為引數傳遞給事件處理函式;同時,在組件的 created 生命周期鉤子中,通過 EventBus 的 on 方法監聽名為 message-updated 的自定義事件,并在事件處理函式中列印接收到的訊息,

 

總之,Vue 3 中組件之間傳值的方式很多,可以根據具體的場景選擇最適合的方式,使用 props 和 $emit 可以實作父子組件之間的傳值,使用 provide 和 inject 可以實作祖先組件向后代組件的傳值,使用 Vuex 和 EventBus 可以實作任意組件之間的傳值,在選擇組件傳值方式時,還應該考慮資料的安全性、可維護性和性能等因素,

 

作者:yuzhihui

出處:https://www.cnblogs.com/yuzhihui/p/17125771.html

宣告:歡迎任何形式的轉載,但請務必注明出處!!!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/544137.html

標籤:其他

上一篇:HTMLCollection 和 Nodelist 的異同?

下一篇:react 高效高質量搭建后臺系統 系列 —— 前端權限

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • IEEE1588PTP在數字化變電站時鐘同步方面的應用

    IEEE1588ptp在數字化變電站時鐘同步方面的應用 京準電子科技官微——ahjzsz 一、電力系統時間同步基本概況 隨著對IEC 61850標準研究的不斷深入,國內外學者提出基于IEC61850通信標準體系建設數字化變電站的發展思路。數字化變電站與常規變電站的顯著區別在于程序層傳統的電流/電壓互 ......

    uj5u.com 2020-09-10 03:51:52 more
  • HTTP request smuggling CL.TE

    CL.TE 簡介 前端通過Content-Length處理請求,通過反向代理或者負載均衡將請求轉發到后端,后端Transfer-Encoding優先級較高,以TE處理請求造成安全問題。 檢測 發送如下資料包 POST / HTTP/1.1 Host: ac391f7e1e9af821806e890 ......

    uj5u.com 2020-09-10 03:52:11 more
  • 網路滲透資料大全單——漏洞庫篇

    網路滲透資料大全單——漏洞庫篇漏洞庫 NVD ——美國國家漏洞庫 →http://nvd.nist.gov/。 CERT ——美國國家應急回應中心 →https://www.us-cert.gov/ OSVDB ——開源漏洞庫 →http://osvdb.org Bugtraq ——賽門鐵克 →ht ......

    uj5u.com 2020-09-10 03:52:15 more
  • 京準講述NTP時鐘服務器應用及原理

    京準講述NTP時鐘服務器應用及原理京準講述NTP時鐘服務器應用及原理 安徽京準電子科技官微——ahjzsz 北斗授時原理 授時是指接識訓通過某種方式獲得本地時間與北斗標準時間的鐘差,然后調整本地時鐘使時差控制在一定的精度范圍內。 衛星導航系統通常由三部分組成:導航授時衛星、地面檢測校正維護系統和用戶 ......

    uj5u.com 2020-09-10 03:52:25 more
  • 利用北斗衛星系統設計NTP網路時間服務器

    利用北斗衛星系統設計NTP網路時間服務器 利用北斗衛星系統設計NTP網路時間服務器 安徽京準電子科技官微——ahjzsz 概述 NTP網路時間服務器是一款支持NTP和SNTP網路時間同步協議,高精度、大容量、高品質的高科技時鐘產品。 NTP網路時間服務器設備采用冗余架構設計,高精度時鐘直接來源于北斗 ......

    uj5u.com 2020-09-10 03:52:35 more
  • 詳細解讀電力系統各種對時方式

    詳細解讀電力系統各種對時方式 詳細解讀電力系統各種對時方式 安徽京準電子科技官微——ahjzsz,更多資料請添加VX 衛星同步時鐘是我京準公司開發研制的應用衛星授時時技術的標準時間顯示和發送的裝置,該裝置以M國全球定位系統(GLOBAL POSITIONING SYSTEM,縮寫為GPS)或者我國北 ......

    uj5u.com 2020-09-10 03:52:45 more
  • 如何保證外包團隊接入企業內網安全

    不管企業規模的大小,只要企業想省錢,那么企業的某些服務就一定會采用外包的形式,然而看似美好又經濟的策略,其實也有不好的一面。下面我通過安全的角度來聊聊使用外包團的安全隱患問題。 先看看什么服務會使用外包的,最常見的就是話務/客服這種需要大量重復性、無技術性的服務,或者是一些銷售外包、特殊的職能外包等 ......

    uj5u.com 2020-09-10 03:52:57 more
  • PHP漏洞之【整型數字型SQL注入】

    0x01 什么是SQL注入 SQL是一種注入攻擊,通過前端帶入后端資料庫進行惡意的SQL陳述句查詢。 0x02 SQL整型注入原理 SQL注入一般發生在動態網站URL地址里,當然也會發生在其它地發,如登錄框等等也會存在注入,只要是和資料庫打交道的地方都有可能存在。 如這里http://192.168. ......

    uj5u.com 2020-09-10 03:55:40 more
  • [GXYCTF2019]禁止套娃

    git泄露獲取原始碼 使用GET傳參,引數為exp 經過三層過濾執行 第一層過濾偽協議,第二層過濾帶引數的函式,第三層過濾一些函式 preg_replace('/[a-z,_]+\((?R)?\)/', NULL, $_GET['exp'] (?R)參考當前正則運算式,相當于匹配函式里的引數 因此傳遞 ......

    uj5u.com 2020-09-10 03:56:07 more
  • 等保2.0實施流程

    流程 結論 ......

    uj5u.com 2020-09-10 03:56:16 more
最新发布
  • 使用Django Rest framework搭建Blog

    在前面的Blog例子中我們使用的是GraphQL, 雖然GraphQL的使用處于上升趨勢,但是Rest API還是使用的更廣泛一些. 所以還是決定回到傳統的rest api framework上來, Django rest framework的官網上給了一個很好用的QuickStart, 我參考Qu ......

    uj5u.com 2023-04-20 08:17:54 more
  • 記錄-new Date() 我忍你很久了!

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 大家平時在開發的時候有沒被new Date()折磨過?就是它的諸多怪異的設定讓你每每用的時候,都可能不小心踩坑。造成程式意外出錯,卻一下子找不到問題出處,那叫一個煩透了…… 下面,我就列舉它的“四宗罪”及應用思考 可惡的四宗罪 1. Sa ......

    uj5u.com 2023-04-20 08:17:47 more
  • 使用Vue.js實作文字跑馬燈效果

    實作文字跑馬燈效果,首先用到 substring()截取 和 setInterval計時器 clearInterval()清除計時器 效果如下: 實作代碼如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta ......

    uj5u.com 2023-04-20 08:12:31 more
  • JavaScript 運算子

    JavaScript 運算子/運算子 在 JavaScript 中,有一些運算子可以使代碼更簡潔、易讀和高效。以下是一些常見的運算子: 1、可選鏈運算子(optional chaining operator) ?.是可選鏈運算子(optional chaining operator)。?. 可選鏈操 ......

    uj5u.com 2023-04-20 08:02:25 more
  • CSS—相對單位rem

    一、概述 rem是一個相對長度單位,它的單位長度取決于根標簽html的字體尺寸。rem即root em的意思,中文翻譯為根em。瀏覽器的文本尺寸一般默認為16px,即默認情況下: 1rem = 16px rem布局原理:根據CSS媒體查詢功能,更改根標簽的字體尺寸,實作rem單位隨螢屏尺寸的變化,如 ......

    uj5u.com 2023-04-20 08:02:21 more
  • 我的第一個NPM包:panghu-planebattle-esm(胖虎飛機大戰)使用說明

    好家伙,我的包終于開發完啦 歡迎使用胖虎的飛機大戰包!! 為你的主頁添加色彩 這是一個有趣的網頁小游戲包,使用canvas和js開發 使用ES6模塊化開發 效果圖如下: (覺得圖片太sb的可以自己改) 代碼已開源!! Git: https://gitee.com/tang-and-han-dynas ......

    uj5u.com 2023-04-20 08:01:50 more
  • 如何在 vue3 中使用 jsx/tsx?

    我們都知道,通常情況下我們使用 vue 大多都是用的 SFC(Signle File Component)單檔案組件模式,即一個組件就是一個檔案,但其實 Vue 也是支持使用 JSX 來撰寫組件的。這里不討論 SFC 和 JSX 的好壞,這個仁者見仁智者見智。本篇文章旨在帶領大家快速了解和使用 Vu ......

    uj5u.com 2023-04-20 08:01:37 more
  • 【Vue2.x原始碼系列06】計算屬性computed原理

    本章目標:計算屬性是如何實作的?計算屬性快取原理以及洋蔥模型的應用?在初始化Vue實體時,我們會給每個計算屬性都創建一個對應watcher,我們稱之為計算屬性watcher ......

    uj5u.com 2023-04-20 08:01:31 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:01:10 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:00:32 more