zoukankan      html  css  js  c++  java
  • Nodejs:Path对象

    模块Path:

    path.normalize(url)

    path.join(url1, url2, ..)

    path.resolve(url1, url2, ..)

    path.relative(url1, url2)

    path.dirname(url)

    path.basename(url)

    path.extname(url)


     

    TIPS:

    以上是Path对象的API,调用方便简洁,一般在项目中我会先写一个顶级目录

    var publicDir = path.resolve(__dirname, './src')

    其余的子目录在此顶级目录衍生

    var pagesDir  = path.resolve(publicDir, './pages')
    var staticDir = path.resolve(publicDir, '.static')
    var buildDir  = path.resolve(publicDir, './build')
    var vendorDir = path.resolve(publicDir, './vendor')

    最后把对象挂载出去,其他文件需要使用到路径的,直接引入就可以了

    module.exports = {
        pagesDir:    path.resolve(publicDir, './pages')
        staticDir:   path.resolve(publicDir, '.static')
        buildDir:    path.resolve(publicDir, './build')
        vendorDir:   path.resolve(publicDir, './vendor')
    }

     

    API样例:

    var path = require('path');
    
    /*
     * 格式化路径:../返回上一级,所以结果为
     * -->'/foo/bar/baz/asdf'
     */
    path.normalize('/foo/bar//baz/asdf/quux/..');
    
    /*
     * 拼接路径:拼接完成后调用normalize(),结果同上
     * -->'/foo/bar/baz/asdf'
     */
    path.join('///foo', 'bar', '//baz/asdf', 'quux', '..');
    
    /*
     * 路径导航:等于cd一遍每个子路径
     */
    path.resolve('foo/bar', '/tmp/file/', '..', 'a/../subfile')
    
    /*
     * 相对路径:b相对于a的路径为:'../../impl/bbb',在a的路径上结果就可以访问到b文件
     * -->'../../impl/bbb'
     */
    path.relative('/data/orandea/test/aaa', '/data/orandea/impl/bbb')
    
    /*
     * 文件夹名称:文件夹所在路径的名称
     * -->'/foo/bar/baz/asdf'
     */
    path.dirname('/foo/bar/baz/asdf/quux')    
    
    /*
     * 文件路径:返回指定的文件名,可排除后缀名
     * -->'quux'
     */
    path.basename('/foo/bar/baz/asdf/quux.html', '.html')
    
    /*
     * 拓展名:返回文件拓展名
     */
    path.extname('index.html')    //    '.html'
    path.extname('index.')        //    '.'
    path.extname('index')        //    ''
    
    module.exports = {
        entry: [],
        output:{
            path: buildDir,
              filename: '[name]/entry.js'
        }
    };
  • 相关阅读:
    如何使用ERStudio 生成comment
    windows 使用excel导出的问题
    iOS Runtime(一)、objc_class深深的误解
    iOS开发安全
    iOS微信运动 刷分
    APP中的 H5和原生页面如何分辨、何时使用
    Weex系列二、显示图片
    Android系列一、创建项目
    Weex系列一、构建Weex工程
    时间复杂度
  • 原文地址:https://www.cnblogs.com/nemoro1928/p/6180234.html
Copyright © 2011-2022 走看看