2017-04-25 16 views
0
私は "vuex-persistedstate.js" が、それは、コンソールにエラーを示し含まれている
const store = new Vuex.Store({ 
    state: { 
     user: { 
      userName:'', 
      loggedInStatus: true, 
      authToken: '' 
     } 
    }, 

    mutations: { 
     addWebToken: function(state, webToken){ 
      state.user.authToken = webToken; 
     }, 
     removeWebToken: function(state){ 
      state.user.authToken = ''; 
     } 
    }, 
    methods:{ 
     getToken:function(){ 
      return store.state.user.authToken; 

     } 
    }, 
    plugins: [createPersistedState()] 

}) 

Vuexプラグインエラー

Uncaught TypeError: Cannot use 'in' operator to search for 'default' in undefined 
    at vuex-persistedstate.js:17 

Uncaught ReferenceError: createPersistedState is not defined 

私はcreatePersistedStateをクリック+ Ctrlキー

()私は、そのファイルにナビゲートすることができます呼び出します。

+0

あなたは '.js'拡張子なしで、それを含めてみました。違いがあるかどうかは確信していませんが、モジュールがnode_modulesの内側にある場合、 'vuex-persistedstate'から' import createPersistedStateを実行すると、そうでなければロードしようとするものの代わりに 'index.js'ファイルが含まれているはずです。それはおそらく 'createPersistedStateが定義されていない理由 'を説明するでしょう - 間違ったことを探していたため、おそらくそれを見つけることができませんでした。 – PeterTheLobster

+0

ノードnpmを使用していません。私はプレーンjsを使用しています。 –

+0

私は確信していませんが、プラグインはnpmを念頭に置いて構築されているようです。 [source](https://github.com/robinvdvleuten/vuex-persistedstate/blob/master/dist/vuex-persistedstate.js)を見ると、サポートされているフレームワーク内で使用されるように構築されているようです輸入/必要があります。 12〜15行目を見てください。 – PeterTheLobster

答えて

0

vuex-persistedstate.jsは、lodashとobject-pathに依存する必要があります。この のvuex-persistedstate.js行17のエラーは、欠落したlodashの依存関係です。 すでにlodashを追加している場合は、vuex-persistedstateモジュール内にロードされていることを確認してください。

プレーンjを本当に使いたい場合は、 window.merge = _.mergewindow.objectPathを、正しいノードモジュールで定義する必要があると定義する必要があります。むしろ、このnpmモジュールを正しく使用するためにwebpackを使用します。

その他のソース:https://github.com/robinvdvleuten/vuex-persistedstate/issues/23

関連する問題