(那里有another question of similar title但我在这里有一个不同的问题。)
It's stated在ES6中,导入的模块立即“执行”。但是,例如我说已经导出了一个对象:
let Player = {
player: null,
init(domId, playerId, onReady) {
window.onYouTubeIframeAPIReady = () => {
this.onIframeReady(domId, playerId, onReady)
}
},
...
}
export default Player
显然,该对象只包含属性和方法。然后,我将其导入另一个模块:
import Player from "./player"
虽然如何“执行”一系列名称 - 值对?在导入时执行类的构造函数更有意义(类的构造函数是在导入时自动运行的吗?我也对此感到困惑),但是“执行”对象只是没有多大意义我
另外,如果我从另一个模块导入一个函数,该函数是否会立即被“评估”并产生其结果?这对我来说似乎也不对,因为函数有时需要参数,导入模块不会自动提供参数。
也许我在这里误解了“执行”/“评价”一词的含义?