所以我知道可以用require.
import {x} from 'x'相當于const {x} = require('x')。
但是呢import * from 'x'?我能想象它被翻譯成的唯一東西是with(require('x')){... }.
然而,with宣告是不受歡迎的,不是嗎?(因為您在編譯時不知道如何決議參考)
uj5u.com熱心網友回復:
import * from "x";
不是有效的 JS。
import * as x from "x";
是。
這與有什么不同
import x from "x";
?
好吧,后者要求你有一個默認的匯出,而前者需要所有的匯出并將它們組合成一個物件。
uj5u.com熱心網友回復:
我認為您對語法感到困惑。這個:
import * from 'x'
無效。你可以做的是:
import * as x from 'x';
這會將x檔案中的所有匯出放入命名空間(在大多數情況下,它只是一個 JavaScript 物件,其屬性和default匯出的名稱相對應)。x匯入的識別符號指的是這個命名空間。
還
import {x} from 'x'相當于const {x} = require('x').
不正確 -require是 CommonJS 語法,而import/export是 ES6 模塊語法。默認情況下,它們不可互換,盡管它們做的事情非常相似。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/360164.html
