我使用nodejs(v0.8.2)和连接资产管理器中间件来使用uglifyJs(v1.3.2)捆绑和缩小js文件。我的配置类似于‘
var assets =
{
'loginJs':{
'debug': false,
'route': /\/js\/login.js/
, 'path': './public/scripts/'
, 'dataType': 'javascript'
, 'files': [
'configs.js',
'WMTX.Web.Library.js',
'sso.js',
'index.js'
]
,'postManipulate': {
'^': [
assetHandler.uglifyJsOptimize
]
}
},
assetManager = require('connect-assetmanager'),
assetsManagerMiddleware = assetManager(assets);
app.configure(function(){
app.use("/", assetsManagerMiddleware, express.static(o.paths.root));
});`
但是,当我启动应用程序时,出现了一个错误:
新(E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:263:22) (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:271:15) at js_error (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:271:15) at parse_error (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:367:17) at Object.next_token as input at next (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:718:37) at Object.parse (E:\work\siteexV2\IDE\node_modules\connect-assetmanager-handlers\node_modules\uglify-js\lib\parse-js.js:704:19)在(E:\work\siteexV2\IDE\node_modules\connect-assetmanager\lib\assetmanager.js:275:42) at module.exports.manipulate (E:\work\siteexV2\IDE\node_modules\connect-assetmanager\lib\assetmanager.js:281:7) at Function.module.exports.generateCache.settings.forEach.userAgentMatches.forEach.content (E:\work\siteexV2\IDE\node_modules\ )的Array.uglifyJsOptimize as 0connect-assetmanager\lib\assetmanager.js:231:11)
我尝试使用命令行中的uglifyJs缩小那些js,可以成功地缩小所有文件。请任何知道出了什么问题的人给我一些帮助,这让我发疯了!非常感谢
发布于 2012-07-19 12:48:30
我不熟悉连接资产管理器,但是代码中有一些语法错误。
据我所知,你试图做什么,你忘了用分号结束你的“资产”声明。在调用require()之后,您似乎也在做同样的事情。这是修正后的代码:
var assets =
{
'loginJs':{
'debug': false,
'route': /\/js\/login.js/,
'path': './public/scripts/',
'dataType': 'javascript',
'files': [
'configs.js',
'WMTX.Web.Library.js',
'sso.js',
'index.js'
],
'postManipulate': {
'^': [assetHandler.uglifyJsOptimize]
}
}; // <- note the semicolon
assetManager = require('connect-assetmanager'); // <- and here
assetsManagerMiddleware = assetManager(assets);
app.configure(function() {
app.use("/", assetsManagerMiddleware, express.static(o.paths.root));
});https://stackoverflow.com/questions/11557387
复制相似问题