检查sails.js中是否存在文件

时间:2014-04-22 09:32:23

标签: javascript php node.js sails.js

我创建了一个sails服务来加载javascript文件取决于它的控制器名称(或页面和/或是否有会话)。

我将这个(数组)JS文件传递给res.local.js并在我的layout.ejs中循环,将js文件包含到我的html中。

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

问题,如何在将JS文件包含在我的html中之前检查JS文件是否存在?

在PHP中,我们有一个名为file_exists的函数,是否有与sails.js类似的函数?

1 个答案:

答案 0 :(得分:1)

是。由于Sails是使用Node.js创建的,因此您可以使用fs.exists

如果找不到该文件,将从数组中删除该文件。您可以将它加载到您之前的视图中。

fs = require('fs');

for (i = 0; i < loadJS.length; i++) {
    fs.exists(loadJS[i], function(exists){
        if(!exists){
            //remove from array
            loadJS.splice(i, 1);
        }
    });
}