首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用gruntjs自动生成html

用gruntjs自动生成html
EN

Stack Overflow用户
提问于 2019-10-26 17:48:48
回答 1查看 25关注 0票数 0

我正在开发一个非常标准的web应用程序,其目录结构如下

代码语言:javascript
运行
复制
/ app ⊢ index.html
        ⊢ / js
            ⊢ app.min.js
        ⊢ / css
            ⊢ app.min.css
        ⊢ / dev
            ⊢ index.html
            ⊢ / js
                ⊢ app1.js
                ⊢ app2.js
            ⊢ / css
                ⊢ app1.css
                ⊢ app2.css

gruntjs脚本对/dev/js/*.js/dev/css/*.css文件进行丑化、串接和小型化,并将它们写入顶级文件夹,以便包含在/index.html中。我也想不出如何自动处理/dev/index.html,这样也可以使用所有最新的更改进行更新,并将其写入根级/index.html。自动化的最简单的方法是什么?

我为https://www.npmjs.com/package/gulp-html-replace找到了gulpjs,但还没有找到类似的gruntjs

更新:--我决定从gruntjs迁移到gulpjs,因为在我看来,这是更好的文档。

Update2:见下面的答案

EN

回答 1

Stack Overflow用户

发布于 2019-10-26 19:06:14

如果其他人被这个问题困住了,下面是我如何用gulpjs解决它的方法

代码语言:javascript
运行
复制
const { parallel, src, dest } = require('gulp');

const htmlreplace = require('gulp-html-replace');
const cssmin = require('gulp-cssmin');
const concat = require('gulp-concat');
const terser = require('gulp-terser');

const htmldest = '.';
const cssdest = htmldest + '/css';
const jsdest = htmldest + '/js';

const finalcss = 'app.min.css';
const finaljs = 'app.min.js';

function docss() {
    return src('dev/css/*.css')
        .pipe(cssmin())
        .pipe(concat(finalcss))
        .pipe(dest(cssdest));
}

function dohtml() {
    return src('dev/index.html')
        .pipe(htmlreplace({
            'css': `css/${finalcss}`,
            'js': `js/${finaljs}`
        }))
        .pipe(dest(htmldest));
}

function dojs(){
  return src('dev/js/*.js')
    .pipe(terser())
    .pipe(concat(finaljs))
    .pipe(dest(jsdest));
}

exports.default = parallel(docss, dohtml, dojs);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58573265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档