2017-05-30 49 views
0

由于angular2应用中bundle.js文件的大小很大,我已经在webpack中配置了compression-webpack-plugin来压缩这些文件,并且在静态dist文件夹中按预期生成了压缩文件.js.gz。当浏览器请求应用程序时,我会首先在本地为浏览器提供.js.gz文件(以及开发环境和其他环境)。我怎样才能做到这一点?在本地呈现压缩文件到angular2应用

回答

2

您使用哪台服务器来为您的本地静态dist文件夹提供服务?

这是它的工作来操纵你的.js.gz文件。

随着节点的精简版服务器,您可以添加这些选项:

// lite-server-config.js 
module.exports = { 
    ... 
    server : { 
    middleware : { 1 : require('compression')() } 
    ... 
    } 
}; 

对于的WebPack-dev的服务器,你可以尝试使用 '压缩' 选项来运行:

$> webpack-dev-server --compress 

来源:http://webpack.github.io/docs/webpack-dev-server.html#webpack-dev-server-cli

+0

我使用@ angular/cli和webpack;当前版本的'@ angular/cli'不提供dist文件夹中的文件。为了压缩包,我做了一个webpack.config.js弹出,并在那里添加了压缩插件。你能告诉我在哪里可以在本地服务器上找到信息,它是在@ angular/cli上吗? – Cling

+0

我使用'ng serve'启动服务器。 Doc说:“运行ng服务时,编译后的输出是从内存中提供的,而不是从磁盘提供的。这意味着被提供的应用程序不在dist文件夹中的磁盘上。 '我如何让应用程序从dist文件夹中提供服务? – Cling