关于express、webpack的一些问题。

老码农,jQuery用惯了。
最近学习使用express,在找资料的过程中,很多关于express与webpack结合的例子。

其实webpack与vue、或者自己写的页面啥的结合 我倒是能理解,因为可以打包成一个独立文件,然后发布或拷贝到自己项目里(无论是java项目、php项目)。
但是既然express本来就是跑起一个web服务(本身就是个web项目),又何必用webpack再把它打包一遍呢?

就算是打包也应该至打包它用的页面或者资源文件什么的吧!

以上的疑惑,还请各位帮忙点拨一下.


另外,还想请教一下,在利用webpack打包的时候,为防止浏览器访问时存在的缓存影响测试结果,可以将输出文件名加上hash值(index.xxxxxxxxxxxxx.js)。请问如何能便捷的将这种文件应用到项目里(比如java项目)。

以我目前的理解,整个过程应该是,前端开发好后,利用webpack打包好js文件,将打包后的文件输出至java项目对应的资源文件目录中,而java项目的html文件,是已经存在于项目的视图目录中,只需要在里面引用某个js文件就行。但是对于这种文件名增加了hash值,又如何处理呢?莫非也要每次手动写上有hash值的文件名?

阅读 2k
2 个回答

个人拙见,webpack就是搞模块化, 个人感觉你的项目里也用了babel。这俩经常一起出现,有了他俩就会有很多好处,比如说使用stage-0提案级的语法,让代码写的更简单,更模块式开发一些。

首先,express是个基于node的Web应用开发框架。大部分时候,express做的事情,只是按照特定的路由规则,把文件发送给浏览器。

这里的文件包括html,也包括js、css。

假设用了vue,那么很大概率你还用了vue单文件组件(xx.vue),还有es6语法。

xxx.vue浏览器是不认识的,es6也有一定概率不认识。于是,需要把xx.vue、es6等,编译成浏览器认识的东西。

比如:xx.vue 拆分成 xx.js、xx.css;es6转成es5;

这个转换过程,就是webpack + 各种loader做的事情:代码转换 + 打包。

转换完后,得到的就是普通的 html、js、css文件,浏览器能够认识。往express里一丢,万事大吉。

至于楼主说的用webpack把express把它打包一遍,这个并不多见。如果express项目下的代码因特殊原因,需要进行转化,用webpack可以理解,但通常不是好的选择。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题