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

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 路由 路由簡單定義,根據不同的url展示不同的頁面效果,暫且認為是這樣。后面我們會詳細講解 >[warning] 我們刷新瀏覽器后發現會出現問題,會重新恢復到默認的效果。 :-: ![](https://img.kancloud.cn/c8/2b/c82bb8dce6f0564c3e0026a4b1177693_560x413.gif) >[success] 解決 > 有兩種方法 > 1、本地存儲,并且 偵聽 2、hashchange 如果要用本地存儲,其實就是將標識符存儲到本地存儲內部。 如果用hashchange,其實就是將標識符添加到 `url` 上。如:[](http://localhost:63342/02vue%E5%85%B6%E5%AE%83%E8%AF%AD%E6%B3%95-%E6%89%A9%E5%B1%95/todolist.html?_ijt=g0fr2v4md8gaggbnrepv39pp0m#)[http://localhost:63342//todolist.html#all](http://localhost:63342//todolist.html#all) ## 路由 在這里我們采用一下第二種方式,學習一下如何使用路由。 ### 修改結構 ``` <footer id="footer"><span id="todo-count"><strong>0</strong>進行中</span> <ul id="filters"> <li> <a href="#all" :class="{selected:sign==='all'}">全部</a> </li> <li> <a href="#activing" :class="{selected:sign==='activing'}" >進行中</a> </li> <li> <a href="#completed" :class="{selected:sign==='completed'}" >已完成</a> </li> </ul> <button id="clear-completed" style="">刪除完成</button> </footer> ``` ### 添加js和功能 ``` function hash() { var hash = location.hash.split('#')[1] || 'all' vm.changeSign(hash); } window.onhashchange = hash hash() ``` >[danger] 注意:在這里面將 `li>a`添加的功能刪除,通過監聽`hash`的變化取出 標識 `sign`。然后調用`vm`實例的`changeSign`方法也要注意默認也要讓其執行一下。 ## BUG修復 :-: ![](https://img.kancloud.cn/84/bc/84bc1ebadf5e0b42890b1307f001c9e7_572x499.gif) 可以發現我們在選中已完成后,再添加數據,此時的數據都應該是進行中,應該不展示,但是現在還展示。原因是因為我們在改變list的時候curlist的值是取出本地存儲中所有所有數據 >[success] 解決: > 取出的數據我們需要根據 我們當前的標識 再進行過濾 ``` watch: { list: { handler() { local.set(this.list) this.curlist = filter[this.sign](this.list); }, deep: true } } ``` >[info] 這里我們用`this.list`或是`local.get()`都是可以的
                  <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>

                              哎呀哎呀视频在线观看