配置Vite以支援在JS檔案中使用JSX語法的方法
P粉571233520
2023-08-24 19:55:15
<p>Vite預設情況下不允許在.js檔案中使用JSX語法。 </p>
<p>我已經將我的檔案重新命名為<code>.jsx</code>(或<code>.tsx</code>),但是我有一些無法重新命名的外部依賴。 </p>
<p>Vite的錯誤範例:</p>
<pre class="brush:php;toolbar:false;">✘ [ERROR] 目前未啟用JSX語法擴展
node_modules/somelib/src/someFile.js:122:11:
122 │ return <div/></pre>
<p>如何設定Vite以支援所有.js檔案中的JSX表達式? </p>
您可以透過使用
loader
選項將所有的js檔案視為jsx來更改esbuild配置:注意:使用.jsx載入器載入.js檔案會有效能損耗。
答案來自於Vite的GitHub上的這個討論,將錯誤的(舊的)答案標記為「正確」。
更新於2023年3月
原始答案在
vite build
中無法正常運作,只能在vite dev
中正常運作。目前版本在vite@^4.0.0
中兩者都適用。您可以複製並測試解決方案的範例倉庫。