最近使用了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'; // 不會出現錯誤的引入方式