[英]Include a JS file directly in another?
假設我有兩個 JS 文件,它們顯然都代表較大的文件。 第一個是root/foo.js
:
let foo = true;
接下來是root/foopolice.js
。 此代碼依賴於root/foo.js
,它本身會引發錯誤:
function patrol(){
if (foo) alert("Found foo"); // ReferenceError
最后是root/index.html
,將兩者聯系起來:
<script src="/foo.js"></script>
<script src="/foopolice.js"></script>
<button onclick="patrol()">Patrol for foo</button>
問題是,我如何將root/foo.js
中定義的變量直接“包含”到root/foopolice.js
而不將兩者合二為一? 使用這兩個腳本標簽是不夠的,因為當我編輯它時, root/foopolice.js
仍然會警告不存在的錯誤。 我願意接受使用 JQuery 或只是香草 JS 的解決方案,具體取決於最佳實踐。
通常,構建過程用於創建一個 JS 包,該包將從多個文件中提取和組合所有必需的代碼(請參閱Parcel或ESBuild )。
如果沒有構建過程,可以使用<script type="module">
導入現代JS 模塊(也稱為“ES 模塊”)。 JQuery 可以在 2020 年及以后完全避免。
庫.js
const name = 'Jane Doe'
export {
name
}
main.js
import { name } from './library.js'
function sayHello() {
console.log(`hello ${name}!`)
}
window.addEventListener('DOMContentLoaded', event => {
document.querySelector('button').addEventListener('click', sayHello)
})
索引.html
<script type="module" src="main.js"></script>
<button>Say Hello</button>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.