前言
多页面应用于结构较于简单的页面,因为简答的页面使用router又过于麻烦.本脚手架出于这样的场景被开发出来.
使用脚手架搭配Hbuilder也同样可以快速使用vue开发安卓和IOS APP.
本文最大特点:
- webpack4
- 多页面
- 跨域Proxy代理
- VConsole移动端调试,手机上的开发者工具
- es6/es7 babel 转换
项目地址 GitHub
使用手册
MogoH5+ 是一个 vue 多页面 脚手架工具 ,结合 H5+可以快速开发安卓与苹果 APP.
即使不适用 Hbuilder 打包成 APP,本脚手架同样可以作为多页面网页生成的参考项目.
特性
- 支持 Npm 生态
- 支持 vue 语法,以及 vue 生态,比如 vux,mint,vant
- 支持 ES6/ES7 语法
- 使用 VConsole 调试
- VSCode 友好
- 局域网便捷调试
- 兼容部分 mui 语法
这些特性其实不是什么新鲜特性,只是单独在 Hbuilder 无法使用.
快速上手
直接下载项目然后根据需求定制打包,最后通过 Hbuilder 云打包即可生成 APP.
本文自带一个案例是使用 VantUI 开发的几个界面,如果你喜欢其他 UI 同样可以替换成其他的 UI.
// 1.安装模块 npm i // or yarn // 2.调试 npm start // 将manifest.json 的`页面入口` 修改成 http://your_ip:8082/ // 3.打包 npm run build
使用
主要怎么使用 MogoH5+做正式的开发,在开发过程中一定要遵守 目录规则 ,否则会有意想不到的错误.
目录结构
. ├── docs // 文档 ├── index.html // 入口模板 ├── jsconfig.json //js配置 ├── manifest.json //hbuilder 入口文件 ├── src │ ├── components //组件文件夹 │ │ └── List.vue //组件 │ ├── index.js //主页入口文件 │ ├── index.vue // 主页vue文件 │ ├── page // 页面 │ └── utils // 工具 ├── unpackage // hbuilder 构建目录 │ └── res └── webpack.config.js //webpack配置目录
新建页面
假如我们要新建一个名称为 list 的页面作为商品列表,我们就要在 ./src/page/goods 下新建 list.js 和 list.vue 两个文件. list.js 作为多页面的入口, list.vue ,脚手架自带了几个页面可供参考.
遵循相对路径原则,如果在 src 访问这个页面则就是 ./goods/list.html !!! 后缀一定是 .html
新建组件
组件放入 ./src/components 目录下,如果组件较多,可自行建立目录.比如 demo 中使用的 Logo 组件可以作为参考.
新建工具库
工具库 ./src/utils 主要放一些公用函数,比如请求,打开 webview,支付,分享等执行函数. demo 中封装了部分来自 mui 的函数比如 自定义事件 , webview .这些函数可以作为参考.
common.js` 是每个页面都需要加载的一个 js,里面加载了`fastclick`和`vconsole`.如果全局需要加统计,全局执行的函数,可以放在这个文件里面.
`./src/utils` 做了 `alias`别名,可以 直接这样加载 `import common from "Utils/common"`.
发送请求
请求库
demo 的请求使用的是 axios ,同样你喜欢什么库都可以自己去封装.
常见的请求库有 fetch , request , SuperAgent , jquery-ajax .
跨域
由于 npm start 后,调试网页是挂在局域网上,并且作为 Hbuilder 的 页面入口 ,因此,在请求时会出现 跨域 .
在 ./build.js 中使用本地代理,将下面的 https://api.douban.com 修改成自己使用的业务域名即可.
proxy: { "/api": { name:"DOUBANAPI", // 自己取名 target: "https://api.douban.com", pathRewrite: { "^/api": "" }, changeOrigin: true, secure: false }, "/baidu_api": { name:"BAIDUAPI", // 自己取名 target: "https://api.baidu.com", pathRewrite: { "^/api": "" }, changeOrigin: true, secure: false }, ... }
如果有更多业务域名可以继续在 proxy 添加.
只有开发的时候才会有跨域问题,打包后的文件网址会被替换成被代理的网址,因此发送请求一定要加上名称 DOUBANAPI
request({ url: DOUBANAPI + "/bookList" });
调试
在 Hbuilder 中调试会有诸多问题,比如:
- 不能直接打印 数组 , 对象 ,需要转成字符串.
- 即使使用 webview调试 ,仍然不能打印出数组,在 mac 上使用也非常不方便.
使用 VConsole ,调试的问题基本就脱离 Hbuilder 了,使用 VConsole 主要优点如下
- 可以打印数组,对象
- 可以查看请求,cookie,Localstorage
- 在System栏目中可以看到页面加载速度
- 可以查看元素
基本上就是一个简化的 开发者工具栏 ,对于调试来说非常简便了.
打包
npm run build
运行命令后会有一个 dist 目录,里面的经过压缩的静态文件.
Hbuilder 发行打包
在使用 Hbuilder 制作安装包前,请将 入口文件 修改成 dist/index.html . 然后可以安心的打包了.
兼容 mui.js
对于兼容 mui 部分函数的问题,已经在移植部分函数到Utils中,在未来的更新中会慢慢移植.
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]