在關于import導入的時候,碰到一點疑惑?
看代碼裡,有的時候導入是:import XXComponent from './XXCiomponent.vue' (這是導入一個元件)
有的時候是:import {a, b, c} from './xxUtil'
就不太明白為什麼有的時候要"{}",而有的時候不用?查了下資料,了解如下:
說到import,那麼就要說到export,因為import導入的就是先要有export導出,看下面代碼的export:
// A子產品導出
export let str = '這是一段文字';
export function func() {
console.log('func方法')
}
-------------------------------
// B子產品導入
import {str, func} from './A'
// A子產品導出
export default "這是一段文字"
----------------------------
// B子產品導入
import s from './A'
// A子產品導出
export default function() {
console.log('列印内容')
}
---------------------------
// B子產品導入
import funcc from './A'
看一下上面第一段代碼和2,3的導出的差別:前面export的時候指定了變量名,而後面2個沒有指定變量名,而是用的default(為子產品指定預設輸出)
再看一下他們import時的差別:
1 當指定了變量名,則import時需要對應A子產品中指定的變量名來導入,而default則名字随便B子產品導入時定義
2 當指定了變量名,則import時需要使用"{}"來進行導入,而default不用"{}"
是以就是:如果使用default這種預設值導出的方式,則另一個子產品導入時可以随便定義名字 且 不需要使用 "{}"