如何使用angular js列出文件夹中的所有文件名

时间:2016-04-24 04:10:03

标签: javascript angularjs

是否有任何函数可以使用angular js列出文件夹中的所有文件名。因为我有很多if .js文件要包括在内。 那么有没有相同的功能?

3 个答案:

答案 0 :(得分:2)

我认为你可以在nodejs中做到这一点。我的要求是将文件列为index.html中APP的来源。请查看这是否有用。

//// THIS WORKS FOR ME 
///// in app.js or server.js

var app = express();

app.use("/", express.static(__dirname));
var fs = require("fs"),

function getFiles (dir, files_){
    files_ = files_ || [];
    var files = fs.readdirSync(dir);
    for (var i in files){
        var name = dir + '/' + files[i];
        if (fs.statSync(name).isDirectory()){
            getFiles(name, files_);
        } else {
            files_.push(name);
        }
    }
    return files_;
}
//// send the files in js folder as variable/array 
ejs = require('ejs');

res.render('index', {
    'something':'something'...........
    jsfiles: jsfiles,
});

///--------------------------------------------------

我做了类似这样的事情来列出我在index / index.ejs索引文件中的文件---下面的代码将列出index.ejs中的文件

<% for(var i=0; i < jsfiles.length; i++) { %>
   <script src="<%= jsfiles[i] %>"></script>
<% } %>

答案 1 :(得分:1)

如果您在Web环境中,您的应用程序正在客户端运行到浏览器中,那么您无法直接访问客户端或服务器文件系统。

在这种情况下,您需要一个像php,asp.net页面这样的描述符来生成包含文件列表的json文件。

PHP SIDE:

<?php
$dir = "FOLDER NAME HERE";
$return_array = array();
if(is_dir($dir)){
    if($dh = opendir($dir)){
        while(($file = readdir($dh)) != false){
            if($file == "." or $file == ".."){
            } else {
                $return_array[] = $file;
            }
        }
    }
    echo json_encode($return_array);
}
?>

ANGULAR SIDE

$http({
  method: 'GET',
  url: 'YOUR PHP PAGE URL HERE'
}).then(function successCallback(response) {

    // RESPONSE CONTAINS YOUR FILE LIST

  }, function errorCallback(response) {

    // ERROR CASE

  });

答案 2 :(得分:0)

感谢您的评论。 我认为最好使用require.js。