在我直接在代碼里使用export與import時(沒有安裝其它插件與依賴包檔案)
17-CalcArea.js檔案:

Moudle.js檔案:

運行檔案時報錯:import {circleArea, squareArea} from ’ ./17-CalcArea.js’
SyntaxError: Unexpected token {

上網查了資料,大多都是通過babel來解決,但是我這不是在寫專案,只是在練習演算法,所以龐大的node_modules檔案對我來說還是很雞肋的,又接著查,后面有一個方法時讓我改檔案后綴名,將.js改為.mjs,但是運行還是出錯:throw new ERR REQUIRE ESM(filename);Error [ERR REQUIRE ESM]: Must use import to load ES Module:

再去網上查資料的時候,才知道時node的版本比較高,將版本降低一點就可以了,但是作為一個程式員,還是比較喜歡用最新的,,,
然后就自己各種嘗試,最終也實作了模塊化,用的是require陳述句開發,17-CalcArea檔案:

Moudle.js檔案:

運行得到正確結果:

但是,CommonJS 模塊化方案 require/exports 是為服務器端開發設計的,原生瀏覽器不支持 require/imports,可使用支持 CommonJS 模塊規范的 Browsersify、webpack 等打包工具,它們會將 require/imports 轉換成能在瀏覽器使用的代碼,但是只是單純的練習一下js的演算法的話,這是最快的方法啦,但是如果是真正的專案開發還是應該遵循:服務器端開發用require/exports ,瀏覽器端使用import/export,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/155461.html
標籤:其他
