exports 和 import

pencil 3月前 106

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 仅有一个。

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"
export default
//demo1.js
export default str = 'hello world'
对应的导入方式,没有花括号
//demo2.js
import str from 'demo1' //导入的时候没有花括号
最新回复 (0)
返回
发新帖