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