[vue]js模块导入导出export default

webstrom调试未授权问题解决

1312420-20181125222342370-1122211802.png

1312420-20181125222429707-1480405755.png

分es6语法和node语法

参考
参考

- export default s1
1.仅能出现1次default
2.导入时候可以随便命名
3,导出时候不必写{}

- 常规的导出导入
1,必须{}格式
2,导入时必须{}匹配
3,a.js 和b.js导入main.js变量名不能重复
    如果重复需 import * as obj1 from "./a.js" 的方式导
-- 栗子:导出2个变量
模块的导入导出:
1,导出 export
2,导入 import

- a.js
export let s1 = "maotai";
export let s2 = "maomao";

- main.js
import {s1, s2} from "./a.js"
console.log(s1, s2);

- index.html
<script src="main.js" type="module"></script>
1,导入导出
2,变量名重复


import * as obj1 from "./a.js"

console.log(obj1.a, obj1.b);


import * as obj2 from "./b.js"

console.log(obj2.b);
- 导出a.js的s1变量, 导入到main.js里面
1.注意导出时候是{}格式
2,导出时export {s1}, 导入时也必须对应 import {s1}
 
- a.js
let s1 = "maotai";
export {s1};

- main.js
import {s1} from "./a.js"
console.log(s1);

- index.html
<script src="main.js" type="module"></script>
1.导出变量时候简写
2.import有变量预解释的效果(定义)

- a.js
export let s1 = "maotai"; //可以用语句来导出

- main.js
import {s1} from "./a.js"
console.log(s1);

- index.html
<script src="main.js" type="module"></script>
- a.js
let s1 = "maotai"; //可以用语句来导出
export default s1;

- main.js(可重复导入)
import any from "./a.js"
console.log(any);

import any2 from "./a.js"
console.log(any2);


- index.html
<script src="main.js" type="module"></script>
- 理解default的规则
- a.js
let s1 = "maotai";
let s2 = "maomao";

//1.只能有1个default
//export default s1;
export default s2;

//2.可以和正常的导出并存
export default {s1,s2}


- main.js(可重复导入)
import any from "./a.js"
console.log(any);

import any2 from "./a.js"
console.log(any2);

import {s1, s2} from "./a.js"
console.log(s1, s2);

- index.html
<script src="main.js" type="module"></script>

export时候不写名称

- a.js
export default 'maotai';

- main.js
import any from "./a.js"
console.log(any);

- index.html
<script src="main.js" type="module"></script>

类比下node的export

let path = require("path");

module.exports = {
    entry: path.resolve('./src/main.js'),
    output: {
        path: path.resolve('./dist'),
        filename: 'bundle.js'
    }
};

关于默认的index.js的特殊处理

导入index.js时候不用写index.js名字
1312420-20181125102857652-388561780.png

demo/build/index.js

module.exports = {
  name:'maotai',
  age:'22'
};

demo/config/test.js

let path = require('path');

let config = require('../config');


console.log(config.name);

导入时候必须要有{}

export let name = 'maotai';

导入时候必须有花括号。

import {name}  from './api';

转载于:https://www.cnblogs.com/iiiiiher/p/9060206.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值