开发者社区> 问答> 正文

node path module 的用法问题

最近做react, webpack.config.js文件里有这么段代码

//path是导入的node模块
output: {

path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
publicPath: '/static/'

}
这段代码什么功能?
__dirname这个东西是哪里来的,作用是什么?没看到声明
'dist'是干什么的?
publicPath是干什么的?

展开
收起
a123456678 2016-03-11 10:04:07 2287 0
2 条回答
写回答
取消 提交回答
  • __dirname是一个全局变量,存储的是文件所在的文件目录

    还 有__filename也是全局变量,存储的是文件名

    2019-07-17 18:58:29
    赞同 展开评论 打赏
  • output 是配置 webpack 打包输出的配置

    path: 指打包输出目录
    filename: 这个指导出文件的名称
    putlicPath: 这个指使用 webpack-dev-server 开发时,webpack-dev-server 会启动一个本地服务器,这样你可以在浏览器中访问页面测试用。

    eg:
    假如你的代码目录结构:

    /pro
        /src
            /yourmodules/...
            /client.js
        webpack.config.js
        package.json    
    webpack.config.js 有类似配置
    
    {
        ...
        output: {
            path: path.join(__dirname, "build"),
            filename: "bundle.js",
            publicPath: "/assets/"
        }
    }

    执行 webpack 操作后

    /pro

    /build
        /bundle.js
    ...

    如果使用 webpack-dev-server 操作

    那么没有 build 文件夹生成,bundle.js 也不存在,个人理解 webpack-dev-server 把打包的文件缓存起来,放在本地服务器的 publicPath 目录下。就这样理解吧

    __dirname: webpack.config.js 这个文件的路径位置, 在这个例子里就是 /pro

    2019-07-17 18:58:29
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
探究 Node.js 的服务端之路 立即下载
个推微服务实践 基于OpenResty 和Node.js 立即下载
沪江基于Node.js大规模应用实践 立即下载