Vite + Vue + validatorjs 打包後出現的問題 (TypeError: ‘X’ is not a constructor)

最近使用了Vite這個打包工具來寫網站,框架也是使用Vue,然後我想用validatorjs這個套件來驗證資料,雖然這個套件看似很久沒維護,也不太多人在使用的樣子,但我覺得它的想法還不錯,而且文件也有說到這是個可以前後端都可以使用的套件。

前陣子已經順利地使用這個套件在後端的node.js上面,今天我試著將它實作在前端,發生了一件難解的事情,就是在開發模式下,都可以順利使用,但打包(npm run build)過後,竟然會出現這樣的錯誤

TypeError: ‘X’ is not a constructor

其中的’X’是我自己改的,會隨著每次打包有不同的變數名字,如Ve、Me…之類的,而上網搜尋似乎也找不太到相關的解決方式,最後我自己隨便改引入的方式,莫名其妙地可以了,為什麼我也不知道

import * as validatorjs from 'validatorjs'; // 文件推薦的方式,但打包後會出現錯誤
import validatorjs from 'validatorjs'; // 不會出現錯誤的引入方式

Leave a Reply

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *