Electron + Vuex 的一些新手爬坑流水


最近連着用 Electron + Vuex 做了兩個客戶端軟件,記錄一點新手期容易掉的坑。

問題表現 原因 解決方案
dispatch mutation 調用 action 方法時,不起作用調用失敗 用 vue-cli 構建的配置里,默認使用了 createSharedMutations 插件 不使用這個插件,或者去看插件的官方文檔,有詳細的解決方案
form 表單數據雙向綁定報錯(無法使用 v-model 綁定數據) 在 vuex 嚴格模式下,只能通過 mutation 改變 state 里的對象數據。而 v-model 試圖直接修改 store 對象,所以報錯 采用 :value 來綁定數據,然后在 change 事件中提交 mutation 來動態改變數據
router push 跳轉組件失效 沒有配置路由清單 在 router/index.js 中配置組件的路由信息
設置默認全屏啟動程序失敗 在初始化 mainWindow 明確定義了窗口的 width、height 值 去掉這段設置代碼
未修改 state 值卻錯,報錯內容指出在 mutations 外修改了 state 值 在 mutation 外獲取 state 里的數據值時,直接為變量賦值目標對象,之后改變這個變量的值,發生引用修改導致報錯 獲取 state 里的對象時,給變量復制對象的拷貝而非對象本身
修改了 state 里的數據,視圖里數據卻沒有跟着變化 在改變對象類型的數據時,采用了直接賦值更新整個對象的方式 修改對象中哪個屬性就只修改那一個屬性,或者使用 Vue.set 方法
程序打包后安裝運行報錯或樣式丟失 通常是因為靜態資源如:圖片、樣式文件等沒有放到 static 目錄下 將這些資源移動到 static 文件下
視圖渲染報錯:Failed to mount component: template or render function not defined. 配置組件屬性關鍵字錯誤

修該 component 為 components 

其實許多問題官網文檔里都有說明,只是作為新手遇到時不一定能想起來,也不一定知道就是那個問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM