这个问题更多的是理论而不是实际。假设我有基于 PHP 框架 Symphony/Zend 的项目,我也使用 gulp 进行前端工作。我想以专业的方式做这个项目,所以我使用 gulp 插件,如jade、clean、uglify、minify、gzip、imagemin 和rev。如果有人不知道这个 gulp-rev 是什么,我们开始吧:
Static asset revisioning by appending content hash to filenames unicorn.css → unicorn-d41d8cd98f.css
例如,缓存静态文件的好处。
所以,这是一个问题......
我运行 gulp 任务,我得到了以下文件:
- assets
- css
- style-bfd65634.css
- js
- vendor-mkg5454.js
- img
- background-ok54353.png
etc...
完成前端工作后,我想将其放入 PHP 框架的视图文件(phtml 文件)中,例如: layout.phtml
...
<link type="text/css" rel="stylesheet" media="screen" href="<?php echo $this->basePath(); ?>/assets/css/style-bfd65634.css">
...
<div id="logo">
<img src="<?php echo $this->basePath(); ?>/assets/img/background-ok54353.png" />
</div>
...
js 文件、图像等也是如此。
几周后我必须更改 CSS 样式中的某些内容,现在怎么办?如何在不需要从 PHP 框架更改 phtml 文件的情况下重新运行 gulp 任务?还是我必须在每个 phtml 文件中手动更改修改过的文件?
如果是这样,那么使用 gulp-rev 之类的插件有什么意义呢?只适用于静态网站?据我所知,没有任何插件可以将jade文件转换为带有PHP标签的phtml