亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

node.js需要文件夾中的所有文件嗎?

node.js需要文件夾中的所有文件嗎?

牛魔王的故事 2019-07-31 14:44:03
node.js需要文件夾中的所有文件嗎?如何要求node.js中文件夾中的所有文件?需要這樣的東西:files.forEach(function (v,k){  // require routes  require('./routes/'+v);}};
查看完整描述

3 回答

?
Cats萌萌

TA貢獻1805條經驗 獲得超9個贊

當require被賦予文件夾的路徑時,它將在該文件夾中查找index.js文件; 如果有,則使用它,如果沒有,則失敗。

最有意義的是(如果你可以控制文件夾)創建一個index.js文件然后分配所有“模塊”然后只需要它。

yourfile.js

var routes = require("./routes");

index.js

exports.something = require("./routes/something.js");exports.others = require("./routes/others.js");

如果您不知道文件名,則應編寫某種加載器。

裝載機的工作示例:

var normalizedPath = require("path").join(__dirname, "routes");require("fs").readdirSync(normalizedPath).forEach(function(file) {
  require("./routes/" + file);});// Continue application logic here


查看完整回答
反對 回復 2019-07-31
?
慕婉清6462132

TA貢獻1804條經驗 獲得超2個贊

我建議使用glob來完成該任務。


var glob = require( 'glob' )

  , path = require( 'path' );


glob.sync( './routes/**/*.js' ).forEach( function( file ) {

  require( path.resolve( file ) );

});


查看完整回答
反對 回復 2019-07-31
?
四季花海

TA貢獻1811條經驗 獲得超5個贊

基于@tbranyen的解決方案,我創建了一個index.js文件,在當前文件夾下加載任意javascripts作為其中的一部分exports。


// Load `*.js` under current directory as properties

//  i.e., `User.js` will become `exports['User']` or `exports.User`

require('fs').readdirSync(__dirname + '/').forEach(function(file) {

  if (file.match(/\.js$/) !== null && file !== 'index.js') {

    var name = file.replace('.js', '');

    exports[name] = require('./' + file);

  }

});

然后你可以require從任何其他地方的這個目錄。


查看完整回答
反對 回復 2019-07-31
  • 3 回答
  • 0 關注
  • 665 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號