vee-validate 提示 options.awareOfUnicodeTokens 錯誤
這個問題其實不算難解,但可能剛遇到會有點沒頭緒,很有可能自己電腦也沒啥問題但是一上 CI 流程,測試環境就掛掉了
錯誤情況
大概可以從這邊獲取到一些關鍵信息
- 它讓你去看錯誤原因的解釋網頁 https://git.io/fxCyr
- 這邊報錯的是
vee-validate
套件 - 看方法名稱應該跟
parse
有關係,應該也是從套件的 scope 驗證自己定義的規則有關係
實際上錯誤的原因就自己看網頁,我覺得也比我講得清楚
驗證情況
利用關鍵字可以查到套件有人反映的事情,也是在版本更新的時候傳出災情,驗證一下自己專案也的確採用的是 2.1.7
版本,並檢查專案目錄下 node_modules
內的 vee-validate
版本,也的確採用的是 2.2.15
。而造成這個情況的元凶就是在 package.json
內依賴套件的語法,寫的是 ^2.1.7
。根據升級規則,也就很順理成章地幫你升到了 2.2.15
,反正沒指定版本嘛
解決辦法
讓 npm 確實採用 2.1.7
版本
測試驗證
- 本地端刪除 node_modules,全部套件重新安裝一次
- 調整 package.json , 在
vee-validate
套件的地方指定2.1.7
版本 (不要^
符號) - 執行
npm install
,讓套件管理自動更新package-lock.json
,更新完畢後該檔案搜尋vee-validate
可看到採用版本的確也是2.1.7
- 跑網站執行,看原本功能錯誤的地方是否已經沒有問題
- 如果有 CI,也在 CI 主機上執行一次
npm ci