<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # API 參考 ### Vuex.Store ``` js import Vuex from 'vuex' const store = new Vuex.Store({ ...options }) ``` ### Vuex.Store 構造器選項 - **state** - 類型: `Object | Function` Vuex store 實例的根 state 對象。[詳細介紹](state.md) ? ?如果你傳入返回一個對象的函數,其返回的對象會被用作根 state。這在你想要重用 state 對象,尤其是對于重用 module 來說非常有用。[詳細介紹](modules.md#模塊重用) - **mutations** - 類型: `{ [type: string]: Function }` 在 store 上注冊 mutation,處理函數總是接受 `state` 作為第一個參數(如果定義在模塊中,則為模塊的局部狀態),`payload` 作為第二個參數(可選)。 [詳細介紹](mutations.md) - **actions** - 類型: `{ [type: string]: Function }` 在 store 上注冊 action。處理函數總是接受 `context` 作為第一個參數,`payload` 作為第二個參數(可選)。 `context` 對象包含以下屬性: ``` js { state, // 等同于 `store.state`,若在模塊中則為局部狀態 rootState, // 等同于 `store.state`,只存在于模塊中 commit, // 等同于 `store.commit` dispatch, // 等同于 `store.dispatch` getters, // 等同于 `store.getters` rootGetters // 等同于 `store.getters`,只存在于模塊中 } ``` 同時如果有第二個參數 `payload` 的話也能夠接收。 [詳細介紹](actions.md) - **getters** - 類型: `{ [key: string]: Function }` 在 store 上注冊 getter,getter 方法接受以下參數: ``` state, // 如果在模塊中定義則為模塊的局部狀態 getters, // 等同于 store.getters ``` 當定義在一個模塊里時會特別一些: ``` state, // 如果在模塊中定義則為模塊的局部狀態 getters, // 等同于 store.getters rootState // 等同于 store.state rootGetters // 所有 getters ``` 注冊的 getter 暴露為 `store.getters`。 [詳細介紹](getters.md) - **modules** - 類型: `Object` 包含了子模塊的對象,會被合并到 store,大概長這樣: ``` js { key: { state, namespaced?, mutations, actions?, getters?, modules? }, ... } ``` 與根模塊的選項一樣,每個模塊也包含 `state` 和 `mutations` 選項。模塊的狀態使用 key 關聯到 store 的根狀態。模塊的 mutation 和 getter 只會接收 module 的局部狀態作為第一個參數,而不是根狀態,并且模塊 action 的 `context.state` 同樣指向局部狀態。 [詳細介紹](modules.md) - **plugins** - 類型: `Array<Function>` 一個數組,包含應用在 store 上的插件方法。這些插件直接接收 store 作為唯一參數,可以監聽 mutation(用于外部地數據持久化、記錄或調試)或者提交 mutation (用于內部數據,例如 websocket 或 某些觀察者) [詳細介紹](plugins.md) - **strict** - 類型: `Boolean` - 默認值: `false` 使 Vuex store 進入嚴格模式,在嚴格模式下,任何 mutation 處理函數以外修改 Vuex state 都會拋出錯誤。 [詳細介紹](strict.md) ### Vuex.Store 實例屬性 - **state** - 類型: `Object` 根狀態,只讀。 - **getters** - 類型: `Object` 暴露出注冊的 getter,只讀。 ### Vuex.Store 實例方法 - **`commit(type: string, payload?: any, options?: Object)`** - **`commit(mutation: Object, options?: Object)`** 提交 mutation。`options` 里可以有 `root: true`,它允許在[命名空間模塊](modules.md#命名空間)里提交根的 mutation。[詳細介紹](mutations.md) - **`dispatch(type: string, payload?: any, options?: Object)`** - **`dispatch(action: Object, options?: Object)`** 分發 action。`options` 里可以有 `root: true`,它允許在[命名空間模塊](modules.md#命名空間)里分發根的 action。返回一個解析所有被觸發的 action 處理器的 Promise。[詳細介紹](actions.md) - **`replaceState(state: Object)`** ?替換 store 的根狀態,僅用狀態合并或時光旅行調試。 - **`watch(fn: Function, callback: Function, options?: Object): Function`** ?響應式地偵聽 `fn` 的返回值,當值改變時調用回調函數。`fn` 接收 store 的 state 作為第一個參數,其 getter 作為第二個參數。最后接收一個可選的對象參數表示 Vue 的 `vm.$watch` 方法的參數。 ?要停止偵聽,調用此方法返回的函數即可停止偵聽。 - **`subscribe(handler: Function): Function`** 訂閱 store 的 mutation。`handler` 會在每個 mutation 完成后調用,接收 mutation 和經過 mutation 后的狀態作為參數: ``` js store.subscribe((mutation, state) => { console.log(mutation.type) console.log(mutation.payload) }) ``` ?要停止訂閱,調用此方法返回的函數即可停止訂閱。 通常用于插件。[詳細介紹](plugins.md) - **`subscribeAction(handler: Function): Function`** > 2.5.0 新增 訂閱 store 的 action。`handler` 會在每個 action 分發的時候調用并接收 action 描述和當前的 store 的 state 這兩個參數: ``` js store.subscribeAction((action, state) => { console.log(action.type) console.log(action.payload) }) ``` 要停止訂閱,調用此方法返回的函數即可停止訂閱。 該功能常用于插件。[詳細介紹](plugins.md) - **`registerModule(path: string | Array<string>, module: Module, options?: Object)`** 注冊一個動態模塊。[詳細介紹](modules.md#模塊動態注冊) `options` 可以包含 `preserveState: true` 以允許保留之前的 state。用于服務端渲染。 - **`unregisterModule(path: string | Array<string>)`** 卸載一個動態模塊。[詳細介紹](modules.md#模塊動態注冊) - **`hotUpdate(newOptions: Object)`** 熱替換新的 action 和 mutation。[詳細介紹](hot-reload.md) ### 組件綁定的輔助函數 - **`mapState(namespace?: string, map: Array<string> | Object): Object`** 為組件創建計算屬性以返回 Vuex store 中的狀態。[詳細介紹](state.md#mapstate-輔助函數) 第一個參數是可選的,可以是一個命名空間字符串。[詳細介紹](modules.md#帶命名空間的綁定函數) - **`mapGetters(namespace?: string, map: Array<string> | Object): Object`** 為組件創建計算屬性以返回 getter 的返回值。[詳細介紹](getters.md#mapgetters-輔助函數) 第一個參數是可選的,可以是一個命名空間字符串。[詳細介紹](modules.md#帶命名空間的綁定函數) - **`mapActions(namespace?: string, map: Array<string> | Object): Object`** 創建組件方法分發 action。[詳細介紹](actions.md#在組件中分發-action) 第一個參數是可選的,可以是一個命名空間字符串。[詳細介紹](modules.md#帶命名空間的綁定函數) - **`mapMutations(namespace?: string, map: Array<string> | Object): Object`** 創建組件方法提交 mutation。[詳細介紹](mutations.md#在組件中提交-mutation) 第一個參數是可選的,可以是一個命名空間字符串。[詳細介紹](modules.md#帶命名空間的綁定函數) - **`createNamespacedHelpers(namespace: string): Object`** 創建基于命名空間的組件綁定輔助函數。其返回一個包含 `mapState`、`mapGetters`、`mapActions` 和 `mapMutations` 的對象。它們都已經綁定在了給定的命名空間上。[詳細介紹](modules.md#帶命名空間的綁定函數)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看