<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                >[success] # 組件通信(二) ~~~ 1.使用'mixins' -- 混入 (mixins) 是一種分發 Vue 組件中可復用功能的非常靈 活的方式。 2.簡單的理解就是,就是類似繼承的關系,如果當前組件中有和'mixins' 重名 的,利用繼承的思考方式就可以理解成別重寫了 3.可以利用'mixins' 形成組件通信 ~~~ >[info] ## 使用案例 * 案例效果圖 ![](https://box.kancloud.cn/e579860f192ccd2e7b3da1fb9cd8551d_220x79.png) ~~~ 1.下面的案例已經將上面的情況說明,'mixins' 可以做到類似與繼承的形式 ,調用的一方可以使用被調用 一方中的方法 ~~~ >[danger] ##### 提取需要放進mixins中的js * 文件目錄在src/lib/tool 中定義了一個公共的觸發 ~~~ export const myMixins = { data(){ return{ thisData:'我是mixins中的數據' } }, methods:{ doTish(){ console.log('我是mixins中的數據') }, }, } ~~~ >[danger] ##### 在我的正常組件中去調用 ~~~ <template> <div class="home"> {{thisData}} </div> </template> <script> // @ is an alias to /src import {myMixins} from '@/lib/tool.js' export default { name: 'home', mixins:[myMixins], } </script> ~~~ >[info] ## 對生命周期和重寫說明 * 頁面打印效果 ![](https://box.kancloud.cn/bac51ed8dae8f6d848e03606393f6220_192x38.png) * 控制臺打印效果 ![](https://box.kancloud.cn/945c9fde94c1da75bec8c8d4553de079_266x79.png) ~~~ 1.根據圖片可以看出如果被使用者的方法和使用者的方法名稱一致,那么會 按照使用者的 方法來執行,也就是重寫 2.但生命周期不同的點在于不會覆蓋,會先執行被使用者的周期然后使用者 的周期,依次交叉 ~~~ >[danger] ##### 提取需要放進mixins中的js ~~~ export const myMixins = { data(){ return{ thisData:'我是mixins中的數據' } }, methods:{ doTish(){ console.log('我是mixins中的數據') }, }, created(){ console.log('我是myMixins 的create的生命周期') }, mounted(){ console.log('我是myMixins mounted的生命周期') }, } ~~~ >[danger] ##### 在我的正常組件中去調用 ~~~ <template> <div class="home"> {{thisData}} </div> </template> <script> // @ is an alias to /src import {myMixins} from '@/lib/tool.js' export default { name: 'home', mixins:[myMixins], data(){ return{ thisData:'重寫了mixins中的數據' } }, created(){ console.log('我調用者 的create的生命周期') }, mounted(){ console.log('我調用者 mounted的生命周期') }, } </script> ~~~ >[info] ## 使用mixins 的特性做一個用戶信息組件通信 ~~~ 1.在一個通用的user.js 中的生命周期去調用當前的方法,然后使用的去繼承 這個調用,當使用的時候就可以獲取到用戶信息,但這種做法會只要使用 就會調用接口 ~~~ >[danger] ##### 做一個通用user.js ~~~ export default { data () { return { userInfo: null } }, methods: { getUserInfo () { // 這里通過 ajax 獲取用戶信息后,賦值給 this.userInfo,以下為偽代碼 $.ajax('/user/info', (data) => { this.userInfo = data; }); } }, mounted () { this.getUserInfo(); } } ~~~ >[danger] ##### 在需要的組件中去調用'mixins' ~~~ <script> import mixins_user from '../mixins/user.js'; export default { mixins: [mixins_user], data () { return { } } } </script> ~~~
                  <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>

                              哎呀哎呀视频在线观看