0

无论我做什么,当我http://localhost:3000/static/js/backbone.js在 url 中输入一个 js 文件 () 时,它都会显示最后缓存的文件资产管理器。jquery.js所以在这种情况下,即使我进入了主干,它也会显示出来。这是我正在使用的代码:

var sys = require('sys');
var fs = require('fs');
var Connect = require('connect');
var assetManager = require('connect-assetmanager');
var assetHandler = require('connect-assetmanager-handlers');

var root = __dirname + '/public';

var Server = module.exports = Connect.createServer();

Server.use('/',
    Connect.responseTime()
    , Connect.logger()
);

var assetManagerGroups = {
    'js': {
        'route': /\/static\/js\/.*\.js/
        , 'path': './public/js/'
        , 'dataType': 'javascript'
        , 'files': [
            'jquery.js',
            'backbone.js'
        ]  
    }
};

var assetsManagerMiddleware = assetManager(assetManagerGroups);
Server.use('/'
    , assetsManagerMiddleware
    , Connect.static(root)
);
Server.listen(3000);
4

1 回答 1

2

您确定jquery.js并且backbone.js没有合并到js您的请求返回的同一文件中吗?这就是的目的connect-assetmanager

您的assetManagerGroups定义基本上是说对路由上匹配的任何 文件的请求,返回 and 的合并和缩小版本。你要求的事实是无关紧要的。.js/static/js/jquery.jsbackbone.jsbackbone.js

README 中的前后图像jquery js很好地说明了这一点,它显示了捆绑的多个文件并返回到对client.js.

于 2012-08-02T18:40:23.063 回答