1 回答

TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊
正如您擁有的那樣,您無法在全球范圍內(nèi)訪問它。但如果你愿意,你可以做到
function foo() {
console.log('Hello Word');
}
(window as any).foo = foo;
然后它應(yīng)該在對(duì)象上可用window(這意味著您可以訪問它或者window.foo()因?yàn)閒oo()該window對(duì)象是全局對(duì)象。
默認(rèn)情況下,諸如此類的變量和方法foo對(duì)于它們所在的模塊(即文件)是私有的。您可以像這樣導(dǎo)出它們:
export function foo() {
console.log('Hello Word');
}
這意味著您可以從其他模塊導(dǎo)入它們,即
import {foo} from "foo";
foo();
但是瀏覽器本身不理解那個(gè)import和export語法 (*) 所以它們?nèi)匀徊皇侨值?。?webpack 理解該語法并將它們?nèi)科唇映蔀g覽器可以使用的形式(在您的“dist/bundle.js”文件中)。查看該文件,您將看到 webpack 插入的引導(dǎo)程序代碼。
(*) 編輯:瀏覽器開始支持模塊:
從本質(zhì)上講,沒有什么是全局的,但這是一件好事,否則它們可能會(huì)相互沖突。即它不會(huì)是模塊化的。
添加回答
舉報(bào)