簡體   English   中英

node.js步行路徑變量

[英]node.js walk path variable

我目前對npm包“ walk”有疑問,問題在於它應該采用的路徑只能由字符串給出。 這是一個問題,因為路徑將根據其搜索目錄而變化。

var walkers = walk.walk(""+animeDir+"", options);
walkers.on('file', function(root, stat, next) {
    files.push(stat.name);
    next();
});

我嘗試了不同的方法,例如:

var walkers = walk.walk("F:/" + animeDir, options);
var walkers = walk.walk("\"animeDir\"", options); // "F:/" was already included
var walkers = walk.walk("'+animeDir+'", options);

最后,只是通過傳遞變量本身,盡管我遇到了一些錯誤,例如: binding.readdir(pathModule._makeLong(path), req); TypeError: path must be a string. binding.readdir(pathModule._makeLong(path), req); TypeError: path must be a string. 我目前的想法不多了,我沒有找到任何幫助的方法。 期待您的答復,在此先感謝您!

假設animeDir (和options )是上面定義的javascript變量,例如

var animeDir = 'F:/AnimeMovies';

walk.walk(dir, options);的第一個參數 函數必須是一個字符串(如上面定義的變量),才能正確地將字符串作為變量傳遞,而無需""+var+""嘗試:

var walkers = walk.walk(animeDir, options);

將字符串連接到字符串變量的正確方法是使用+

var walkers = walk.walk( animeDir + '\', options);

如果您想直接在字面上傳遞字符串,請嘗試以下操作:

var walkers = walk.walk("F:/animeMovies/videos/", options);

您是否嘗試過此步驟以找到成功調用walk.walk(dir, options);之后發生的任何錯誤walk.walk(dir, options);

  walkers.on('errors', function(root, nodeStatsArray, next) {
  nodeStatsArray.forEach(function (n) {
    console.error("[ERROR] " + n.name)
    console.error(n.error.message || (n.error.code + ": " + n.error.path));
  });
  next();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM