首页 > 解决方案 > 在 gulp 中获取祖父母目录名称

问题描述

我很想得到我gulpfile.js文件的祖父母目录。这是我的文件夹结构:airi\Gulp\gulpfile.js 我想获取具有名称的文件夹airi

gulp.task('serve', ['sass'], function () {
    browserSync.init({
        proxy: "http://localhost/" + var_that_stores_name_airi,
    });
});

var_that_stores_name_airi将是我的变量,其中包含我想要的文件夹名称(即:airi)。我想要这个,以便我可以将它附加到我的 browsersync 代理 url。我如何在 gulp 中做到这一点?谢谢

标签: node.jsgulp

解决方案


如果你想花哨,这会做到:

const path = require('path');

let dir = path.relative(path.parse(path.dirname(__dirname)).dir, path.parse(__dirname).dir)

或尝试更简单的

let dir = path.parse(path.resolve(__dirname, '../')).name;

[感谢@DerekNguyen 下面的精彩评论。]

这也将做到:

const path = require('path');

let dir = __dirname.split(path.sep);
dir = dir[dir.length - 2];
console.log("dir = " + dir);


gulp.task('serve', ['sass'], function () {

  let dir = __dirname.split(path.sep);
  dir = dir[dir.length - 2];

  browserSync.init({
    proxy: "http://localhost/" + dir,
  });
});

推荐阅读