2017-04-25 3 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

https://github.com/robinvdvleuten/vuex-persistedstate/issues/23 당신이'.js' 확장없이 포함하려고했다. 그것이 차이를 만들지는 모르겠지만, 모듈이 node_modules 안에 있다면, 'vuex-persistedstate '에서 import createPersistedState를 실행하는 것은 그렇지 않으면로드하려고 시도하는 것이 아니라'index.js' 파일을 포함해야한다고 가정합니다 . 그것은 아마도'createPersistedState가 정의되지 않은 이유 '를 설명 할 것입니다. 아마도 잘못된 것을 찾고 있었기 때문에 찾을 수 없었을 것입니다. – PeterTheLobster

+0

노드 npm을 사용하고 있지 않습니다. 나는 평범한 js를 사용하고있다. –

+0

잘 모르겠지만 플러그인은 npm을 염두에두고 만들어졌습니다. [소스] (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를 추가 한 경우 vodx-persistedstate 모듈에로드되어 있는지 확인하십시오.

평이한 j를 사용하고 싶다면. window.merge = _.mergewindow.objectPath을 올바른 노드 모듈로 정의해야한다고 정의해야합니다. 오히려 webpack을 사용하여이 npm 모듈을 올바르게 사용하십시오.

더 많은 소스 :