用Cordova打包Vue项目的方法步骤


Posted in Javascript onFebruary 02, 2019

现在国内越来越多的开发者使用Vue开发混合app,但是当大家开发完成过后才发现不知道该怎么将Vue项目打包成app。

现在的打包Vue项目目前流行的就是使用weex和cordova。weex是阿里提供并且Vue的作者也极力推荐的,有兴趣的可以去学习使用一下。下面说说怎么使用cordova打包Vue项目:

第一步:安装cordova,创建好cordova项目。

第二步:修改vue项目

首先修改vue项目的index.html,引入cordova.js。这个引入在浏览器打开会报错。要打包后运行在真机后方可看到效果

<body>
 <div id="app"></div>
 <script type="text/javascript" src="cordova.js"></script>
 <!-- built files will be auto injected -->
</body>

然后修改src中的main.js为以下代码

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
Vue.config.productionTip = false
document.addEventListener('deviceready', function() {
 new Vue({
  el: '#app',
  router,
  store,
  template: '<App/>',
  components: { App }
 })
 window.navigator.splashscreen.hide()
}, false);

最后修改config文件夹中的index.js文件,修改build中的

assetsSubDirectory: 'static',
assetsPublicPath: '/',

assetsSubDirectory: '',
assetsPublicPath: '',

第三步:运行

看看是否能够运行起来,如果正常说明到这里是没有问题的(注意这里运行的时候需要将document.addEventListener注释,
因为在浏览器环境下是找不到cordova.js的也就不能监听到deviceready的事件,打包在真机上才能实现监听)。

第四步:将vue打包好的文件放到cordova项目中并打包cordova run android,会生成一个可执行的apk文件,也可以直接在真机上运行。安装即可。

友情提示:

如果vue项目在运行npm run dev或者npm run build的时候遇到问题一般不是代码出错的话可以将node_modules文件夹删除使用npm install安装。

如果是因为eslint导致代码检查不通过的话,可以将Vue项目的build文件夹下的webpack.base.config文件中的rules

{
   test: /\.(js|vue)$/,
   loader: 'eslint-loader',
   enforce: 'pre',
   include: [resolve('src'), resolve('test')],
   options: {
   formatter: require('eslint-friendly-formatter')
   }
  },

这段代码注释即可。

PS:通过cordova将vue项目打包成app

一、创建一个cordova工程

cordova create cordovaVue

cd cordovaVue
  • config.xml -包含应用相关信息,使用到的插件以及面向的平台
  • platforms - 包含应用运行平台如 Android 和 iOS 上对应的 Cordova 库
  • plugins - 包含应用所需插件的 Cordova 库,使得应用能够访问例如照相机和电池状态相关的事项。
  • www - 包含应用源代码,例如 HTML, JavaScript 和 CSS 文件
  • hooks - 包含为个性化应用编译系统所需的脚本 

二、添加安卓平台

cordova platform add android --save

三、在vue项目中生成编译完成的源文件

npm run build

四、将cordova项目中的www文件夹下的内容替换为vue项目中生成的dist文件夹中的内容 

五、在cordova项目中创建Android应用

cordova build android

六、将手机连接在电脑上,运行该 Android 程序

cordova run android

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
12个非常有创意的JavaScript小游戏
Mar 18 Javascript
JavaScript setTimeout和setInterval的使用方法 说明
Mar 25 Javascript
使用get方式提交表单在地址栏里面不显示提交信息
Feb 21 Javascript
Vue监听数据对象变化源码
Mar 09 Javascript
MvcPager分页控件 适用于Bootstrap
Jun 03 Javascript
JS中LocalStorage与SessionStorage五种循序渐进的使用方法
Jul 12 Javascript
微信小程序模板和模块化用法实例分析
Nov 28 Javascript
JQuery通过后台获取数据遍历到前台的方法
Aug 13 jQuery
基于axios 解决跨域cookie丢失的问题
Sep 26 Javascript
微信小程序实现张图片合成为一张并下载
Jul 16 Javascript
解决vue net :ERR_CONNECTION_REFUSED报错问题
Aug 13 Javascript
javascript中layim之查找好友查找群组
Feb 06 Javascript
JS实现数组去重及数组内对象去重功能示例
Feb 02 #Javascript
JS实现的Object数组去重功能示例【数组成员为Object对象】
Feb 01 #Javascript
JavaScript动态创建二维数组的方法示例
Feb 01 #Javascript
Electron 如何调用本地模块的方法
Feb 01 #Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
Feb 01 #Javascript
原来JS还可以这样拆箱转换详解
Feb 01 #Javascript
微信小程序拍照和摄像功能实现方法示例
Feb 01 #Javascript
You might like
PHP.MVC的模板标签系统(二)
2006/09/05 PHP
一组PHP可逆加密解密算法实例代码
2014/01/21 PHP
php实现微信支付之退款功能
2018/05/30 PHP
如何在Web页面上直接打开、编辑、创建Office文档
2007/03/12 Javascript
ExtJs3.0中Store添加 baseParams 的Bug
2010/03/10 Javascript
javascript学习笔记(五)正则表达式
2011/04/08 Javascript
JS 添加网页桌面快捷方式的代码详细整理
2012/12/27 Javascript
jQuery中:first-child选择器用法实例
2014/12/31 Javascript
js鼠标悬浮出现遮罩层的方法
2015/01/28 Javascript
JavaScript中的关联数组问题
2015/03/04 Javascript
AngularJS 入门教程之HTML DOM实例详解
2016/07/28 Javascript
vue.js表格分页示例
2016/10/18 Javascript
浅谈jquery的html方法里包含特殊字符的处理
2016/11/30 Javascript
Vue 2.0 服务端渲染入门介绍
2017/03/29 Javascript
Javascript实现基本运算器
2017/07/15 Javascript
vue点击当前路由高亮小案例
2019/09/26 Javascript
swiper实现异形轮播效果
2019/11/28 Javascript
Vue学习之组件用法实例详解
2020/01/06 Javascript
使用原生javascript开发计算器实例代码
2021/02/21 Javascript
对DataFrame数据中的重复行,利用groupby累加合并的方法详解
2019/01/30 Python
python做接口测试的必要性
2019/11/20 Python
使用python的turtle绘画滑稽脸实例
2019/11/21 Python
Python 根据数据模板创建shapefile的实现
2019/11/26 Python
Python3和pyqt5实现控件数据动态显示方式
2019/12/13 Python
Python如何基于smtplib发不同格式的邮件
2019/12/30 Python
深度学习入门之Pytorch 数据增强的实现
2020/02/26 Python
Python如何把字典写入到CSV文件的方法示例
2020/08/23 Python
PyCharm+Miniconda3安装配置教程详解
2021/02/16 Python
html5视频自动横过来自适应页面且点击播放功能的实现
2020/06/03 HTML / CSS
联想韩国官网:Lenovo Korea
2018/05/10 全球购物
广州地球村科技数据库题目
2016/04/25 面试题
酒店拾金不昧表扬信
2014/01/18 职场文书
护士岗位职责
2014/02/16 职场文书
2014年销售部工作总结
2014/12/01 职场文书
2015年服务员工作总结
2015/04/08 职场文书
PostgreSQL并行计算算法及参数强制并行度设置方法
2022/04/07 PostgreSQL