搜索
首页web前端css教程只是分享我的墨西哥湾

只是分享我的墨西哥湾

我为这个网站设置的毛毛工程似乎是蓝色的,开始有种族条件。我会运行手表命令,更改一些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
这么多颜色链接这么多颜色链接Apr 13, 2025 am 11:36 AM

最近有一系列有关颜色的工具,文章和资源。请允许我通过将它们四舍五之后关闭几个标签,以供您享受。

自动利润在Flexbox中的工作方式自动利润在Flexbox中的工作方式Apr 13, 2025 am 11:35 AM

罗宾以前已经介绍过这一点,但是我在过去的几周里听到了一些关于它的困惑,看到另一个人在解释它,我想

移动彩虹移动彩虹Apr 13, 2025 am 11:27 AM

我绝对喜欢三明治网站的设计。在许多美丽的功能中,这些标题是滚动时带有彩虹的下线。它不是

新年,新工作?让我们做一个网格驱动的简历!新年,新工作?让我们做一个网格驱动的简历!Apr 13, 2025 am 11:26 AM

许多流行的简历设计通过以网格形状铺设部分来充分利用可用的页面空间。让我们使用CSS网格创建一个布局

将用户摆脱过多习惯的一种方法将用户摆脱过多习惯的一种方法Apr 13, 2025 am 11:25 AM

页面重新加载是一回事。有时,当我们认为它没有响应或认为新内容可用时,我们会刷新页面。有时我们只是生气

域驱动的设计与React域驱动的设计与ReactApr 13, 2025 am 11:22 AM

关于如何在React世界中组织前端应用的指导很少。 (只需移动文件,直到“感觉正确”,大声笑)。真相

检测非活动用户检测非活动用户Apr 13, 2025 am 11:08 AM

大多数情况下,您并不真正在乎用户是否积极参与或暂时非活动。不活跃,意思,也许他们

Wufoo ZapierWufoo ZapierApr 13, 2025 am 11:02 AM

Wufoo一直在集成方面非常出色。他们与特定应用程序(例如广告系列显示器,MailChimp和Typekit)进行集成,但他们也

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

禅工作室 13.0.1

禅工作室 13.0.1

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

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器