module.exports 的用法
module.exports 对象是由模块系统创建的。在我们自己写模块的时候,需要在模块最后写好模块接口,声明这个模块对外暴露什么内容,module.exports 提供了暴露接口的方法。
示例
1、返回一个 JSON Object
var app = {
name: 'app',
version: '1.0.0',
sayName: function(name){
console.log(this.name);
}
}
module.exports = app;
let proxyObj = {};
proxyObj["/"] = {
ws:false, // 关闭 webSocket
target: "http://localhost:8081", // 目标地址
changeOrigin: true,
pathRewrite: {
'^/':''
}
}
module.exports = {
devServer:{
host: "localhost",
port: 8080,
proxy: proxyObj
}
}
export 的用法
在 JavaScript ES6 中,export 与 export default 均可用于导出常量、函数、文件、模块等,你可以在其它文件或模块中通过 import+(常量 | 函数 | 文件 | 模块) 名的方式,将其导入,以便能够对其进行使用,但在一个文件或模块中,export、import 可以有多个,export default 仅有一个。
示例
1、export
// api.js
export const postRequest = (url, params) => {
return axios({
method: "post",
url: `${base}${url}`,
data: params,
})
}
export const putRequest = (url, params) => {
return axios({
method: "put",
url: `${base}${url}`,
data: params,
})
}
export const getRequest = (url, params) => {
return axios({
method: "get",
url: `${base}${url}`,
data: params,
})
}
export const deleteRequest = (url, params) => {
return axios({
method: "delete",
url: `${base}${url}`,
data: params,
})
}
对应的导入方式,有花括号
// main.js
import {postRequest} from "./utils/api"
import {putRequest} from "./utils/api"
import {getRequest} from "./utils/api"
import {deleteRequest} from "./utils/api"
2、export default
//demo1.js
export default str = 'hello world'
对应的导入方式,没有花括号
//demo2.js
import str from 'demo1' //导入的时候没有花括号
箭头函数的用法
ES6标准新增了一种新的函数:Arrow Function(箭头函数)。
基础语法
通常函数的定义方法
var fn1 = function(a, b) {
return a + b
}
function fn2(a, b) {
return a + b
}
使用 ES6 箭头函数语法定义函数,将原函数的 “function” 关键字和函数名都删掉,并使用 “=>” 连接参数列表和函数体。
var fn1 = (a, b) => {
return a + b
}
(a, b) => {
return a + b
}
当函数参数只有一个,括号可以省略;但是没有参数时,括号不可以省略。
// 无参
var fn1 = function() {}
var fn1 = () => {}
// 单个参数
var fn2 = function(a) {}
var fn2 = a => {}
// 多个参数
var fn3 = function(a, b) {}
var fn3 = (a, b) => {}
// 可变参数
var fn4 = function(a, b, ...args) {}
var fn4 = (a, b, ...args) => {}
箭头函数有两种格式,一种只包含一个表达式,省略掉了 { ... } 和 return。还有一种可以包含多条语句,这时候就不能省略 { ... } 和 return
() => return 'hello'
(a, b) => a + b
(a) => {
a = a + 1
return a
}
如果返回一个对象,需要特别注意,如果是单表达式要返回自定义对象,不写括号会报错,因为和函数体的 { ... } 有语法冲突。
注意,用小括号包含大括号则是对象的定义,而非函数主体
x => {key: x} // 报错
x => ({key: x}) // 正确
参考文章
https://blog.csdn.net/zhanghow/article/details/86616378
https://blog.csdn.net/zhou_xiao_cheng/article/details/52759632
https://blog.csdn.net/qq_32614411/article/details/80897256
每天学习一点点,每天进步一点点。