export default
default 本质是将后面变量(值)赋给 default,然后以default名称输出。
import
在获取default变量时,写在大括号的外面 ,可自定义名称。
变量写法
//a.js
export let b = ;
export default ;
<script type="module">
import nm,{b} from "./a.js"; console.log(b,nm);
</script>
函数写法
匿名写法也可以用于非匿名函数,不过在模块外func1函数名无效,并且视为匿名函数
// a.js
export function func() {
console.log("函数");
} export default function () {
console.log("匿名函数");
}
/*
或 export default function func1() {
console.log("匿名写法也可以用于非匿名函数,不过在模块外func1函数名无效,并且视为匿名函数。");
} */
<script type="module">
import test,{func} from "./a.js";
test();
func();
</script>
字面量写法
// a.js
export const o = {
name: "0",
func() {
console.log("字面量");
}
} export default {
name: "匿名字面量",
func() {
console.log("匿名字面量");
}
}
<script type="module">
import t,{o} from "./a.js";
t.func();
o.func();
</script>
类写法
export class T {
func() {
console.log("类");
}
} export default class V {
func() {
console.log("类名V对外不可见并且属于匿名类");
}
}
<script type="module">
import M,{T} from "./a.js"; let m = new M();
let t = new T();
m.func();
t.func();
</script>
export default class {
func() {
console.log("匿名类");
}
}
<script type="module">
import SS from "./a.js"; let s = new SS();
s.func();
</script>
* 整体加载
整体加载符号 * 星号,加载的所有变量皆为别名成员。
语法:import * as 变量 from "文件"
export const b = 1;
export default () => {
console.log("默认");
}
<script type="module">
import * as T from "./a.js";
T.default(); // 调用默认名
console.log(T.b);
</script>