vue-cli3打包時遇到Cannot assign to read only property 'exports' of object '#<Object>'問題的解決方法。
大致是說,在webpack打包的時候,可以在js文件中混用require和export。但是不能混用import 以及module.exports。
因為webpack 2中不允許混用import和module.exports,
為了使編譯好的程序能在大多數瀏覽器下運行。webpack里面有一個編譯器叫Babel,負責把ES6的語言轉化為commonJS以兼容絕大多數瀏覽器。當你混用這兩個語法的時候你可以使用babel的commonJS模式幫你把import編譯成require。
然而第二種情況就是你要使用@babel/plugin-transform-runtime這個插件的時候,同時你又在某個commonJS寫的文件里使用這個插件時,babel會默認你這個文件是ES6的文件,然后就使用import導入了這個插件,從而產生了和第一種情況一樣的混用錯誤。解決方法是在babel.config.js里配置unambiguous設置,讓babel和webpack一樣嚴格區分commonJS文件和ES6文件。