gulp生成图片的路径难道一旦确定就不能改变了?
第一次用gulp压缩图片club-pic时是生成在cover的img目录下,后来发现这图是公用的,就把生成路径改到了common目录下,并重命名为club01-pic,可是图片文件还是会生成到原来的路径之下。我看了下控制台,输出路径确实写的是common,不明白为什么会出现这个错误,望大神指导~~下面附上几张或许能够帮到你们的图~
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
更多
发布评论
评论(9)
我试着把common和index这两个文件夹都移动到others的上一级目录(即src目录下),再一次执行gulp,从json文件显示的内容发现js和css文件的路径会跟着变化,而png和jpg文件的路径不会跟着变化(这个有需要的话可以截图)......这让我疑惑难道gulp能够记录下上次操作过的图片文件的相关信息?
说错了,在json文件中看到的是,common文件夹在mobile目录下,那么这个就跟我之前的操作无关了,mobile目录下一直都只有dist、html和src三个子目录~
如图所示,common文件夹和index文件夹都在others目录下,但从json文件中看到的则是,common在src目录下,index文件夹才是在others目录下。(这个或许跟我之前把common文件夹从src目录下移动到others目录下的操作有关)。
感谢你多次抽空为我解答,文字表达上有点拙,在下方补上了一张图片,或许能够更加清楚地表达我的疑惑。感觉就好像是gulp记住了这个文件的目录位置,在下次操作时检测到同样的一个文件(即使它的复制的)就会生成到它上一次生成的那个目录中~
目前对这个问题的处理方式是,修改一下这张图片,比如svg图中多打个空格,jpg图尺寸弄大一点点,再次放进去后就可以正常地生成到指定路径。 感谢指正参数注释。
可是我将输出路径打印出来,确实是我想要的,可是实际生成的文件却不在这个路径上~~类似的情况还有,就是用rev生成的json文件中记录的文件路径,十分诡异,令我摸不着头脑...我下边附个图说明下情况,感谢你~
给的图没到点上。
你的 src 目录结构是如何的,dist 目录结构是如何的?
theSrc 和 theDst 分别是什么(图里很难分辨)?
你希望 src 里面的什么位置的图生成到 dist 的里面的什么位置(图中有两个 common,无法分辨你描述的是哪一个)?
目录上的问题建议详细阅读 Gulp 关于目录部分的描述:https://github.com/gulpjs/gulp/blob/master/docs/API.md#optionsbase,应该对你有所帮助。
PS: imagemin 参数注释有错, progressive 是无损地把 jpg 格式转为能渐进加载的形式,不是压缩。
---
我模拟了你的操作,没有发生你描述的情况,问题还是很可能在于你传递的目录有点问题。顺便匹配目录应该用 **
gulpfile.js:
初始状态:
执行一次 gulp 之后:
src 中复制 t.jpg 到另一目录:
执行一次 gulp: