簡體   English   中英

在使用Nuxt進行SSR期間未調用Vue實例`watcher'

[英]Vue instance `watcher` not called during SSR with Nuxt

我有一個帶有以下代碼的插件:

   let vm = new Vue({
      data: {
        foo: 1,
      },
      watch: {
        $data: {
          deep: true,
          handler(){
            console.log('changed')
          }
        }
      }
    })

    vm.foo = 123; // should trigger watcher

問題是'changed'消息僅在客戶端打印,這意味着在SSR期間觀察者未稱為服務器端嗎? 對這種行為有任何解釋嗎? 謝謝!

這是一個純Vue SSR的小型實現: https : //codesandbox.io/s/oqx461ll8z

結果與預期有所不同。 SSR流程完成后,觀察者將使用最新值進行拖動。 由於服務器上沒有反應性,Vue出於一致性和性能方面的原因( )必須預取數據,這將發生。

結果:

<div data-server-rendered="true">123</div>
{ foo: [Getter/Setter] } 123 123
changed

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM