grunt 怎样合并 html

 我来答
千锋教育
2016-09-16 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
简单的做法就是把 header 和 footer 抽出来,在 html 中通过占位符的方式引入,然后自己写个自定义的 task 去插入。

例如,header.html 的路径是:/common/header.html,其中一个页面可能这样引入 header 文件:

<!DOCTYPE html>
<html>
<head>
<title>A</title>
</head>
<body>
<include src="/common/header.html"/>
</body>
</html>

然后自己写一个 grunt task 来打包 html 文件,把 html 文件中的 <include xxx/> 替换成对应的文件内容, 下面是伪代码:

grunt.registerTask('htmlpack', function(){
var dir = xxxx; //源文件的路径
var destDir = xxxx; //要保存的路径

// 读取源文件
fs.readDir(dir, function(filename){
var file = fs.readFile(filename);
var include = file.match(/\<include.+?\/\>/);

// 替换内容
include.forEach(function (item) {
var src = item.replace('<include src=""', '').replace('"/>', '');
var html = fs.readFile(src);
file.replace(item, html);
});

// 输出文件
fs.writeFile(destDir+filename, file);
})
})
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式