我想在我的檔案 index.js 中匯入我的檔案 functions.js,并在 functions.js 中使用變數和函式。
例如:我的檔案functions.js中有一個變數x。我像“import './functions.js';”一樣匯入functions.js 在我的 index.js 中。路徑肯定是正確的(它們在同一目錄中)。但是當我嘗試使用 x 時,我遇到了下一個錯誤 ->“index.js:01 Uncaught ReferenceError: x is not defined”
函式.js
export var x = 0;
索引.js
import './functions.js';
console.log(x);
謝謝 !:)
uj5u.com熱心網友回復:
模塊的重點是擺脫在單個范圍內共享所有內容的業務(全域范圍,默認情況下在非模塊腳本中)。如果你想這樣做,不要使用模塊,使用非模塊腳本。
模塊是根據以下定義的
- 他們提供的 (
export) - 他們的期望 (
import)
一般來說,你最好明確這些關系:
import { x } from "./fonctions.js";
// ...use `x`...
假設x是一個命名匯出:
export const x = /*...*/;
// or
export function x() {
// ...
};
// etc.
最接近 JavaScript 模塊中“從 X 匯入所有內容”構造的是模塊命名空間物件匯入,如下所示:
import * as fonctions from "./fonctions.js";
然后你會用fonctions.x來參考x. 但是,x仍然必須從fonctions.js(如上)匯出。在模塊中宣告的任何未明確匯出的內容對該模塊都是私有的,因此它不會出現在模塊命名空間物件中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/372544.html
標籤:javascript 网络包
