吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7049|回复: 17
收起左侧

[其他原创] 【Web】前端静态页面开发小工具(WebsiteBuilderTools)

  [复制链接]
Leona 发表于 2019-4-2 11:51
本帖最后由 Leona 于 2019-4-2 11:53 编辑

WebsiteBuilderTools

一款基于art-template模板引擎,gulp的前端网站开发构建小工具,开发支持实时热更新。

开发初衷

  • 前后端分离是目前的一个大趋势,可能已经太多的前端没有经历前后端一起开发的日子了,但是一些老

项目还是依然需要前后端一起开发。前段时间公司要我写几个静态页面,习惯了前后端分离开发,一时间

没有框架的写静态页面感觉十分的麻烦,而且万一他们想改个什么菜单、文字或者图片的,如果只有一个

页面需要修改还好,万一它是整站都有,折腾的还是我。于是我就想,能不能搞个前端的模板引擎,既可

以实时热更新调试,也可以自动打包编译成可供后端使用的静态页面。

  • 于是乎我就整理了下我想实现的效果

    1. 可以自动编译我钟爱的less,并压缩为min版
    2. 可以自动压缩图片
    3. 可以将js自动压缩成min版
    4. 可以组件化开发html,比方说头部,底部,侧边栏一个组件,或者说一个母版框架
    5. 可以用npm快速构建项目
    6. 开发时可以实时热更新,编辑文件保存,浏览器自动刷新页面
    7. 还能配置路由,方便编写页面时的调试
    8. 一些菜单、导航等的数据可以配置,方便修改
    9. 最后可以将编写好的项目,直接打包扔给后端,完事
  • 接着我就开始学习以下内容

    1. 速成了webpack(最终放弃使用,可能是学艺不精,发现它打包出来的项目竟是基于js驱动的一个小站点,也就和vue类似,这完全不符合的我初衷,且我想要快,毕竟公司嘛需要的是效率)
    2. 速成了node (这是基础语法,node嘛,前端目前比较热门的语言,这个抽空我还是得好好学习学习);
    3. 速成gulp (这是为了构建打包使用的,我也为了开发这个小工具才了解到的,原谅作为一个前端竟然才知道这玩意,简直对不起我的岗位(╥╯^╰╥));
    4. 速成art-templatet (这个是随便找的一个模板引擎,百度随便搜了下,感觉还不错的样子,觉得符合我的要求);
    5. 基于这三大块,我开始开发的我小工具了。
    6. 首先,起个服务,这是必须的嘛,要调试就必要要先写个服务,于是结合koa写了wbt.server.js
    7. 来个配置文件,有个服务,肯定得有打包,那这所有的东西总要有个配置文件吧,所以就整了个wbt.config.js
    8. 接下来就是打包了,这个就用到了我速成的gulp ,简单编写了gulpfile.js,说来这个工具真心不错,简单,快速,方便。而且插件也超级丰富。唯一不足的就是art-templatet编译插件并不足以满足我的要求,所以我就把gulp-art这个插件捣鼓下来修改了下,就有了gulp-art.js
    9. 最后的我的小工具就弄好了,说来服务那里写的麻烦了点,为了实时编译,我在gulpfile.js里面又代{过}{滤}理了一次,这样就整个两个服务。原谅小女子学艺不精,等我把速成变成熟悉的时候我再来完善吧!

使用指南

  • WebsiteBuilderTools项目下载保存到本地
  • 使用 npm 安装依赖: npm i
  • 项目开发测试运行: npm run dev (需要实时热更新运行:npm run dev:hot
  • 项目打包输出运行:npm run build
  • 开始编辑,.art文件语法请参考 [art-template模板引擎官网文档]

目录说明

> -- src // 开发目录
>   -- assets // 静态资源存放
>      -- images // 图片
>      -- scripts // javascript
>      -- styles // CSS、less、sass等样式
>   -- component  // art部分视图存放
>   -- data // 测试数据存放
>   -- views // art模板视图存放

> -- dist // 静态页面打包输出目录
> -- config // 配置目录
>   -- wbt.config.js // 主要配置文件
>   -- wbt.route.js // 路由配置文件
>   -- wbt.server.js // 开发测试服务器配置文件
>   -- gulp-art.js // gulp插件,用于编译art模板文件为html

> -- .gulpfile.js // gulp配置

> -- .gitignore
> -- package.json
> -- package-lock.json
> -- README.md

配置文档

wbt.config.js (主要配置)

  • artTemplate: [art-template]模板引擎选项配置,参考[官方文档]

  • fileList: 文件清单,填写相对于src开发目录的路径,如:

    {
    art: 'views', // 表示 art 模板文件所在目录指向:src/views
    img: 'assets/images', // 表示图片文件所在目录指向:src/assets/images
    }
  • output: 输出配置

    {
    file: path.join('dist') // 打包输出的文件路径,使用相对路径
    }
  • devServer: 开发服务配置

    {
    host: 'localhost', 
    port: '8084'
    }

wbt.route.js (路由配置)

const shareData = require('../src/data/share');
const appMainRoute = [
        {
        // 路由路径
                path: '/',  
        // art模板文件名,默认查找wbt.config.js中设置的art文件指向目录中的art文件
                name: 'home', 
        // art模板使用数据,自行require
                data: shareData
        }
];

项目下载

WebsiteBuilderTools.7z (82.44 KB, 下载次数: 80)

免费评分

参与人数 4吾爱币 +6 热心值 +4 收起 理由
whaleseason + 1 + 1 谢谢@Thanks!
苏紫方璇 + 3 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
Delevin + 1 + 1 支持一下亲爱的!
mmnnbbvv005 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

mmnnbbvv005 发表于 2019-4-2 13:30
感谢发布原创作品,吾爱破解论坛因你更精彩!
cn52pojie 发表于 2019-4-2 14:02
longsui48 发表于 2019-4-2 14:25
内裤超人 发表于 2019-4-2 19:59
厉害了。。。
AVenus 发表于 2019-4-3 08:50
正在学习前端,很不错的源码,学习下
ZhuSheng 发表于 2019-4-16 13:20

感谢发布原创作品,吾爱破解论坛因你更精彩!
52cui 发表于 2019-4-19 14:21
厉害了 !!!
lilexy 发表于 2019-4-19 16:25
功能有点强大哦
三帕 发表于 2019-4-26 17:12
小姐姐从事前端多久了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-16 20:33

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表