用vue2实现手机APK \ 微信小程序项目开发方案及思路

导读:本篇文章讲解 用vue2实现手机APK \ 微信小程序项目开发方案及思路,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

主要是跟vue相关的开发环境与框架。

区分PC端与移动端:

PC端    : VUE+elementui

移动端  : Uni-app小程序 + Vant weapp组件


uni-app

uni-app是 DCloud 出品的新一代跨端框架,可以说是目前跨端数最多的框架之一了,目前支持发布到:App(Android/iOS)、H5、小程序(微信小程序/支付宝小程序/百度小程序/字节跳动小程序),目前市面上类似的框架还有:Taro(京东出品)、Megalo(网易出品)。

uni-app 的 nvue 说白了就是 weex 的那一套东西,uni-app App端内置了一个基于 weex 的SDK 改进的原生渲染引擎,提供并实现了 App 端了原生渲染能力。

weex 支持的东西,在 nvue 里大多都是支持的,所以这里就不详细讲述 weex 的相关组件和 api 调用,只讲述一些在实际开发过程中遇到的一些小问题。

Nvue

是native vue的缩写,是uni-app的一种渲染方式。

nvue用的是weex方式的原生渲染,nvue的css写法受限,nvue页面只能使用flex布局,不支持其他布局方式,如果不开发APP,那么不需要使用nvue;Weex渲染:Weex是使用流行的web开发体验来开发高性能原生应用的框架。

而vue文件用的是webview渲染,Webview是一个基于webkit的引擎,可以解析DOM元素,展示html页面的控件,他和浏览器展示页面的原理是相同的,所以可以把它当做浏览器看待。

weex简介

Weex 是一套简单易用的跨平台开发方案,能以 web 的开发体验构建高性能、可扩展的 native 应用,为了做到这些,Weex 与 Vue 合作,使用 Vue 作为上层框架,并遵循 W3C 标准实现了统一的 JSEngine 和 DOM API,这样一来,你甚至可以使用其他框架驱动 Weex,打造三端一致的 native 应用。

nvue和vue的区别:

nvue是native vue的缩写,是uni-app的一种渲染方式。

nvue用的是weex方式的原生渲染,nvue的css写法受限,nvue页面只能使用flex布局,不支持其他布局方式,如果不开发APP,则不需要适用nvue。weex渲染:weex是使用流行的web开发体验来开发高性能原生应用的框架。

vue文件用的是webview渲染,Webview是一个基于webkit的引擎,可以解析DOM元素,展示html页面的控件,他和浏览器展示页面的原理是相同的,所以可以把它当做浏览器看待。

MintUI

Mint UI 是饿了么前端团队出品的移动端 UI 组件库。

基于 Vue 2.0 构建,继桌面 UI 组件库 Element UI 后又一个优秀的开源 UI 组件库,包含丰富的 CSS 和 JS 组件,能够快速构建出风格统一的页面,提升开发效率。

和Bootstrap一样对原生的HTML标签进行了封装,进行了美化,让我们能够专注于业务逻辑而不是UI界面。

Mint UI 组件库特性

  • UI 设计风格中性,不需要改样式就能适应很多产品项目
  • 轻量化。依托 Vue.js 高效的组件化方案,Mint UI 做到了轻量化,即便引入全部组件,压缩后的文件体积也仅有 30kb 左右(gzip)
  • 性能优秀。各种动效采用 CSS3 处理,避免浏览器进行不必要的重绘和重排,从而获得流畅顺滑的体验
  • 按需加载组件。支持只加载声明过的组件及其样式文件,中小项目能大大减少打包体积
  • 官方文档:mint-ui documentation

Vant

有赞前端开发团队推出的一款基于VUe的移动端UI框架,和Bootstrap一样对原生的HTML标签进行了封装,进行了美化,让我们能够专注于业务逻辑而不是UI界面。(通常用于电商界面制作)

官方文档:Vant 2 – Mobile UI Components built on Vue

=== 本人方案

结合自身知识系统(vue2,webstorm),综上相关框架了解,选择了以下方案:

开发环境:HBuilder X  + Webstorm

框       架:Uni-app +  Vue2  


webstorm开发的uniapp + hbuilderx进行app 小程序打包

  • 使用vue2 CLI创建uni-app项目

vue2环境,node.js, cli脚手架必须要有,这里就不详说了。

模版名字这个是固定,必须要输入 : dcloudio/uni-preset-vue

创建一个新目录,window终端执行以下语句

vue create -p dcloudio/uni-preset-vue my-project
(如果已有项目,cd后直接 npm install )

 用vue2实现手机APK \ 微信小程序项目开发方案及思路

 这里我选择了:默认模板, 默认模版使用的vue2,

如果选择了:Hello uni-app 模版。 使用的vue3

创建uniapp vue项目完成。

用vue2实现手机APK \ 微信小程序项目开发方案及思路

接下来要结合HBuilder来进行编译运行打包。

HBuilderX 环境配置

HBuilerX安装

官网下载,并安装,安装完成之后进入Dcloud注册一个账号 :DCloud – HBuilder、HBuilderX、uni-app、uniapp、5+、5plus、mui、wap2app、流应用、HTML5、小程序开发、跨平台App、多端框架uni-app多端开发,开发一次同时生成App、小程序、H5用vue2实现手机APK \ 微信小程序项目开发方案及思路https://dcloud.io/

运行打包之前需要认证手机号-认证页面:

开发者中心

导入官方的Demo项目源码/或者上面创建的项目:

  • 导入上面指令创建项目

用vue2实现手机APK \ 微信小程序项目开发方案及思路

导去官方hello-uniapp DEMO项目

下载源码:

GitHub – dcloudio/hello-uniapp: uni-app框架演示示例uni-app框架演示示例. Contribute to dcloudio/hello-uniapp development by creating an account on GitHub.用vue2实现手机APK \ 微信小程序项目开发方案及思路https://github.com/dcloudio/hello-uniapp

GitHub有时候打开不了,备用

hello-uniapp: Uniapp官方demo

uniapp项目打包成android APK

项目导入完成之后,在HBuilerX,打包原生APP apk安装包: Build=>Mobile App Cloud packaging。

当前项目第一次打包,没有配置AppID,点击 Modify manifest.json配置一个由DClound自己账号下生成一个应该的AppID。在登录情况下点击:Reacquire会自动生成。然后保存再回到打包界面

用vue2实现手机APK \ 微信小程序项目开发方案及思路

 

用vue2实现手机APK \ 微信小程序项目开发方案及思路

用vue2实现手机APK \ 微信小程序项目开发方案及思路

 解决:

将Read_contacts权限注释 

用vue2实现手机APK \ 微信小程序项目开发方案及思路

安装到手机:

打包完成之后,打开APK目录,右键选择安装到真实手机上。 

 用vue2实现手机APK \ 微信小程序项目开发方案及思路

uniapp项目打包运行成微信小程序

首先:下载并安装微信开发者工具,然后这个开发者工具需要到其他网上注册一个开发者账号,否则运行不程序。

在HBuilerX打开上面用脚手架创建uniapp或者用官方的hello uniapp项目,

用vue2实现手机APK \ 微信小程序项目开发方案及思路

 如果是第一次运行微信小程序,这里HBuilder需要配置一下开发者工具安装目录exe。这样才能自动打开对应微信小程序界面。

打开成功,在微信小程序开发者工具界面如下:

用vue2实现手机APK \ 微信小程序项目开发方案及思路

uniapp项目打包运行成PC web网页

这个最简单了,只要有浏览器在就OK

用vue2实现手机APK \ 微信小程序项目开发方案及思路

 打开运行完成。

用vue2实现手机APK \ 微信小程序项目开发方案及思路

HBuilderX 与WebStorm配合开发uni_app

webstorm用习惯了,

基于webstorm+hbuilderX两个编译器结合开发uni-app程序
最新版的Hbuilder X创建uni-app项目【采用Vite方法创建】导致无法生成package.json文件,且不会自动安装node_modules的库,为此【Hbuilder X】创建的uni-app,无法在webstorm正常编译!

为了同时支持webstorm+hbuilderX配合开发编译,首先请使用vue-cli3的脚手架创建一个Vue3 的初始项目,然后把其中的【package.json】文件拷贝到uni-app,在执行【npm install】此时在webstorm即可正常开发uni-app了

注意:虽然webstorm无法正常编译uni-app项目,但是对于【Ctrl+B】跳转路径来说,webstorm要方便很多,其次就是在【package.json】定义ESlint的规则,要方便很多!

HBuilderX 工程

HBuilderX 创建的工程默认不带 types 语法提示,在 WebStorm 中编辑的时候,可以自行安装

初始化npm(如已初始化跳过此步骤)
npm init -y

安装 uni-app 语法提示

npm i @types/uni-app @types/html5plus -D

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/101520.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!