目录
我的特殊仓库做的事情
代码转储!
问题 /问题
首页 web前端 css教程 只是分享我的墨西哥湾

只是分享我的墨西哥湾

Apr 13, 2025 am 10:00 AM

只是分享我的墨西哥湾

我为这个网站设置的毛毛工程似乎是蓝色的,开始有种族条件。我会运行手表命令,更改一些CSS,并且处理有时会留下一些额外的文件,这些文件本来可以在处理过程中清理。就像清理任务发生在降落在文件系统中的文件之前(或者……我从来没有真正到达底部)。

关于该错误的细节,没关系。我认为我会通过升级物品使用Gulp 4.x而不是3.x并在内置Gulp.Series命令中运行物品来解决它,我认为这会有所帮助(确实如此)。

对我来说,吞噬4.x是一段旅程,涉及我放弃一年,然后重新点击斗争并最终将其修复。我的麻烦是Gulp 4需要2.x的CLI版本,而Gulp 3出于何种原因使用3.x版本。从本质上讲,我需要降级版本,但是在尝试了十亿件事做到这一点之后,似乎没有什么用,就像我的机器上有一个幽灵版CLI 3.x一样。

我敢肯定,Savvier命令行的人本来可以比我更快地解决这个问题,但是事实证明,运行命令-v Gulp会揭示gulp安装位置的文件路径,该文件揭示了/usr/usr/local/local/share/npm/npm/npm/bin/gulp,并从那里手动删除它,然后重新设置最后版本,以使我在最新的版本中获得最新的版本,从而使我获得了最新后退的2.x。

现在,我可以使用Gulp 4.x,我将Gulpfile.js重新归为较小的功能,每个功能都相当孤立。这是我在此站点上的设置非常独特的,因此,这并不是要成为通用用法的一些样板。我只是出版,因为当我创建它时,它肯定对我有帮助。

我的特殊仓库做的事情

  • 运行Web服务器(browsersync)以进行样式注入和自动恢复
  • 运行一个文件观察器(本机Gulp功能),用于在正确的文件上运行正确的任务并执行上述操作
  • CSS处理
    • SASS>自动改装器>缩小
    • 从模板中折断样式表缓存(例如
    • 将style.css放在WordPress主题的正确位置,并清理仅在处理过程中需要的文件
  • JavaScript处理
    • babel>连接>缩小
    • 打破<script> s的浏览器缓存</script>
    • 清理处理中创建的未使用的文件
  • SVG处理
    • 制作一个SVG Sprite( s的块
    • 将其命名为sprite.php文件(因此可以在模板中包含php)并将其放置在特定的位置
  • PHP处理
    • 当广告更改时,将JavaScript中的Ajax调用更新为缓存障碍

代码转储!

 const gulp = require(“ gulp”),
  browsersync = require(“ browser-sync”)。create(),
  sass = require(“ gulp-sass”),
  postcss = require(“ gulp-postcss”),
  autoprefixer = require(“ autoprefixer”),
  cssnano = require(“ cssnano”),
  del = require(“ del”),
  babel = require(“ gulp-babel”),
  Minify = require(“ Gulp-Minify”),
  concat = require(“ gulp-concat”),
  重命名= require(“ Gulp-rename”),
  替换= require(“ Gulp-Replace”),
  svgsymbols = require(“ gulp-svg-symbols”),
  svgmin = require(“ gulp-svgmin”);

const路径= {
  样式:{
    src:[“ ./scs/do.scss”,“ ./art-direction/the.scss”],
    dest:“ ./css/”
  },,
  脚本:{
    src:[。
    dest:“ ./js/min”
  },,
  SVG:{
    src:“ ./icons/* .svg”
  },,
  PHP:{
    src:[。
  },,
  广告:{
    SRC:“ ./ads/* .php”
  }
};

/ *样式 */
功能dostyles(完成){
  返回Gulp.Series(样式,MoveMainStyle,DeleteoldMainStyle,Done => {
    cachebust(“ ./ header.php”,“ ./”);
    完毕();
  })(完毕);
}

功能样式(){
  返回Gulp
    .src(paths.Styles.src)
    .pipe(sass())
    .on(“错误”,sass.logerror)
    。
    .pipe(gulp.dest(paths.styles.dest))
    .pipe(browsersync.stream());
}

函数movemainStyle(){
  返回gulp.src(“ ./ css/style.css”)。管道(gulp.dest(“ ./”));
}

函数deleteoldMainStyle(){
  返回del(“ ./ css/style.css”);
}
/ *结束样式 */

/ *脚本 */
功能doscripts(完成){
  返回海湾系列(
    预处理,
    concatjs,
    minifyjs,
    deleteartifactjs,
    重新加载,
    完成=> {
      cachebust(“ ./ parts/footer-scripts.php”,“ ./parts/”);
      完毕();
    }
  )(完毕);
}

功能PrepRocessjs(){
  返回Gulp
    .src(paths.scripts.src)
    。管道(
      babel({
        预设:[“@@babel/env”],
        插件:[“@babel/plugin-proposal-class-properties”]
      }))
    )
    .pipe(gulp.dest(“ ./ js/babel/”));
}

函数concatjs(){
  返回Gulp
    .src([
      “ JS/libs/jquery.lazy.js”,
      “ js/libs/jquery.fitvids.js”,
      “ JS/libs/jquery.resizable.js”,
      “ JS/libs/prism.js”,
      “ JS/babel/imhimighting-fixes.js”,
      “ JS/babel/global.js”
    )))
    .pipe(Concat(“ Global-Concat.js”))
    .pipe(gulp.dest(“ ./ js/concat/”));
}

功能minifyjs(){
  返回Gulp
    .src([[“ ./ js/babel/*。JS”,“。
    。管道(
      缩小({
        分机:{
          SRC:“ .js”,
          最低:“ .min.js”
        }
      }))
    )
    .pipe(gulp.dest(paths.scripts.dest));
}

函数deleteartifactjs(){
  返回del([
    “ ./js/babel”,
    “ ./js/concat”,
    “ ./js/min/*.js”,
    “!./ js/min/*。最小
  );
}
/ *结束脚本 */

/ * SVG */
函数dosvg(){
  返回Gulp
    .src(paths.svg.src)
    .pipe(svgmin())
    。管道(
      svgsymbols({
        模板:[“ default-svg”],
        svgattrs:{
          宽度:0,
          身高:0,
          显示:“无”
        }
      }))
    )
    。
    .pipe(gulp.dest(“ ./”));
}
/ *结束SVG */

/ *通用事物 */
函数cachebust(src,dest){
  var cbString = new Date()。getTime();
  返回Gulp
    .SRC(SRC)
    。管道(
      替换( /cache_bust = \ d /g,function(){
        返回“ cache_bust =” cbString;
      }))
    )
    .pipe(gulp.dest(dest));
}

功能重新加载(完成){
  browsersync.reload();
  完毕();
}

函数观察(){
  browsersync.init({
    代理:“ csstricks.local”
  });
  Gulp.Watch(paths.Styles.src,dostyles);
  Gulp.Watch(paths.scripts.src,doscripts);
  Gulp.Watch(paths.svg.src,dosvg);
  Gulp.Watch(paths.php.src,reload);
  gulp.watch(paths.ads.src,done => {
    cachebust(“ ./ js/global.js”,“ ./js/”);
    完毕();
  });
}

gulp.task(“默认”,手表);
登录后复制

问题 /问题

  • 最糟糕的部分是它不会非常明智地打破缓存。当CSS发生变化时,它会打破所有样式表上的缓存,而不仅仅是相关图表。
  • 我可能只会在将来使用PHP Include()svg图标,而不是处理弹簧。
  • 如果原始SVG具有宽度和高度属性,则SVG处理器会断开,这似乎是错误的。
  • 吞噬变化会提高速度吗?如在其中,仅查看已更改的文件而不是所有文件?还是不需要?
  • 我应该在Gulpfile.js上重新启动毛吗?
  • 如果我使用的所有lib都兼容ES6,那么我可以进口东西而不是必须手动连接,肯定会很好。

总是可以做更多的事情。理想情况下,我只是开源整个网站,我还没有到达那里。

以上是只是分享我的墨西哥湾的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1653
14
CakePHP 教程
1413
52
Laravel 教程
1304
25
PHP教程
1251
29
C# 教程
1224
24
带有粘性定位的堆叠卡和一点点的杂物 带有粘性定位的堆叠卡和一点点的杂物 Apr 03, 2025 am 10:30 AM

前几天,我发现了科里·金尼文(Corey Ginnivan)网站上的这一点,当您滚动时,彼此之间的卡片堆放集。

Google字体可变字体 Google字体可变字体 Apr 09, 2025 am 10:42 AM

我看到Google字体推出了新设计(Tweet)。与上一次大型重新设计相比,这感觉更加迭代。我几乎无法分辨出区别

如何使用HTML,CSS和JavaScript创建动画倒计时计时器 如何使用HTML,CSS和JavaScript创建动画倒计时计时器 Apr 11, 2025 am 11:29 AM

您是否曾经在项目上需要一个倒计时计时器?对于这样的东西,可以自然访问插件,但实际上更多

HTML数据属性指南 HTML数据属性指南 Apr 11, 2025 am 11:50 AM

您想了解的有关HTML,CSS和JavaScript中数据属性的所有信息。

为什么Flex布局中的紫色斜线区域会被误认为是'溢出空间”? 为什么Flex布局中的紫色斜线区域会被误认为是'溢出空间”? Apr 05, 2025 pm 05:51 PM

关于Flex布局中紫色斜线区域的疑问在使用Flex布局时,你可能会遇到一些令人困惑的现象,比如在开发者工具(d...

如何通过CSS选择第一个类名为item的子元素? 如何通过CSS选择第一个类名为item的子元素? Apr 05, 2025 pm 11:24 PM

在元素个数不固定的情况下如何通过CSS选择第一个指定类名的子元素在处理HTML结构时,常常会遇到元素个数不�...

使Sass更快的概念证明 使Sass更快的概念证明 Apr 16, 2025 am 10:38 AM

在一个新项目开始时,Sass汇编发生在眼睛的眨眼中。感觉很棒,尤其是当它与browsersync配对时,它重新加载

在前端开发中,如何使用CSS和JavaScript实现类似Windows 10设置界面的探照灯效果? 在前端开发中,如何使用CSS和JavaScript实现类似Windows 10设置界面的探照灯效果? Apr 05, 2025 pm 10:21 PM

在前端开发中如何实现类似Windows...

See all articles