Cordova - 打包Vue项目的详细步骤(将Vue.js项目编译成App)

转自:https://www.hangge.com/blog/cache/detail_2101.html

  现在有越来越多的开发者使用 Vue.js 进行移动应用的开发,而如何将一个 Vue 项目打包成手机可用的 App 有很多方法。下面介绍如何使用 cordova 来打包 Vue 项目(这里以 Android 应用为例)。

 

一、准备工作

1,环境搭建

首先我们要搭建好 Cordova 环境、Android 环境,具体可以参考我之前写的这篇文章:

 

2,创建项目

新建一个 Cordova 项目(用于打包 Vue 项目),并添加 Android 平台文件。具体操作同样可以参考上面文章。

原文:Cordova - 打包Vue项目的详细步骤(将Vue.js项目编译成App)

 

3,项目运行测试

(1)手机先装好设备驱动(这个很重要)

(2)将手机接上电脑,并设置为调试模式。

1

设置/设定 -> 开发者选项 -> USB 调试。将其打勾,允许 USB 线调试。

(3)运行命令:cordova run android -list 显示当前连接的 android 设备。 

原文:Cordova - 打包Vue项目的详细步骤(将Vue.js项目编译成App)

 

(4)运行命令:cordova run android -target="32309910caf57f11" 即可自动将工程编译安装到设备上,并启动真机进行调试。(target 里便是上面查到的设备编码)

    如果你电脑只接了一台设备那么直接运行:cordova run android 就好了。

原文:Cordova - 打包Vue项目的详细步骤(将Vue.js项目编译成App)

 

二、修改 Vue 项目

1,修改 config/index.js

将 build 属性节点下的 assetsPublicPath 该成 '' (注意是 build 下 的 assetsPublicPath,不要改 dev 下的了)

1

2

3

4

5

6

7

8

build: {

  // Template for index.html

  index: path.resolve(__dirname, '../dist/index.html'),

 

  // Paths

  assetsRoot: path.resolve(__dirname, '../dist'),

  assetsSubDirectory: 'static',

  assetsPublicPath: ''//原来是 '/'

 

2,修改 index.html

这里我们手动将 cordova.js 添加进来。

1

2

3

4

5

6

7

8

9

10

11

<html>

<head>

    <meta charset="utf-8">

    <meta name="viewport" content="width=device-width,initial-scale=1.0">

    <title>hangge.com</title>

</head>

<body>

    <div id="app"></div>

    <script type=text/javascript src=cordova.js></script>

</body>

</html>

 

3,修改 src/main.js

将 new Vue() 代码放到 deviceready 回调里面。(在使用 pc 开发调试时可以先把外层的这个监听给注释掉,等到要打包成 app 时再放开。)

1

2

3

4

5

6

7

8

9

document.addEventListener('deviceready', function() {

  new Vue({

      el: '#app',

      store,

      router,

      components: { App },

      template: '<App/>'

  })

}, false);

 

三、打包 Vue 项目

(1)首先在 Vue 项目文件夹下运行如下命令进行编译:

1

npm run build


(2)执行完成后会生成一个 dist 文件夹,我们将该文件夹里的所有文件复制到 cordova 项目的 www 文件夹下替换掉原有的文件。

原文:Cordova - 打包Vue项目的详细步骤(将Vue.js项目编译成App)

 

(3)进入 Cordova 项目文件夹,执行如下命令就可以生成 App 并自动在手机上安装运行了。

1

cordova run android

 

附:让 Vue 项目直接编译到 Cordova 项目下

    按照上面的操作,每次打包新版本,我们都需在 Vue 项目编译后手动将 dist 文件夹下的内容复制到 cordova 项目的 www 文件夹下。其实我们可以通过修改编译的发布路径,从而省去手动复制这个操作。

 

(1)假设我们的 Vue 项目和 Cordova 项目位置是平级的。

原文:Cordova - 打包Vue项目的详细步骤(将Vue.js项目编译成App)

 

(2)修改 config/index.js 文件中 build 属性节点下的 index、assetsRoot 属性,将它们改成 Cordova 项目下的 www 文件夹(注意是 build 下 的 index、assetsRoot 属性,不要改成 dev 下的了)

1

2

3

4

5

6

build: {

  //将文件直接编译到 cordova 项目下面

  index: path.resolve(__dirname, '../../cordova_project/www/index.html'),

  assetsRoot: path.resolve(__dirname, '../../cordova_project/www'),

  assetsSubDirectory: 'static',

  assetsPublicPath: ''//原来是 '/'


(3)这样以后每次我们执行 npm run build 命令都回自动加文件编译到 Cordova 项目文件夹下。

好的,下面是基于Cordova打包Vue.js项目成为Android应用程序的详细步骤: 1. 安装Node.js和npm Cordova需要Node.js和npm,所以首先需要安装它们。 2. 安装Cordova 安装完成Node.js和npm之后,使用以下命令安装Cordova: ``` npm install -g cordova ``` 3. 创建Cordova项目Vue.js项目的根目录下,执行以下命令创建Cordova项目: ``` cordova create <project_name> <package_name> ``` 其中,`<project_name>`是项目名称,`<package_name>`是应用程序的包名。 4. 添加Android平台 在Cordova项目的根目录下,执行以下命令添加Android平台: ``` cordova platform add android ``` 这会下载和安装Android平台所需的所有依赖项和工具。 5. 将Vue.js项目复制到Cordova项目Vue.js项目中的所有文件复制到Cordova项目的`www`目录下。 6. 安装Vue.js依赖项 在Cordova项目的根目录下,执行以下命令安装Vue.js依赖项: ``` npm install vue --save ``` 7. 安装Cordova插件 为了让Vue.js应用程序能够在原生应用程序中运行,需要安装一些Cordova插件。在Cordova项目的根目录下,执行以下命令安装`cordova-plugin-whitelist`和`cordova-plugin-inappbrowser`插件: ``` cordova plugin add cordova-plugin-whitelist cordova plugin add cordova-plugin-inappbrowser ``` 8. 修改配置文件 在Cordova项目的根目录下,找到`config.xml`文件,并将以下代码添加到文件中: ``` <allow-navigation href="http://*/*" /> <allow-navigation href="https://*/*" /> ``` 这允许应用程序在Web视图中加载外部URL。 9. 构建项目Cordova项目的根目录下,执行以下命令构建项目: ``` cordova build android ``` 这会将Vue.js应用程序打包成为一个Android应用程序,并生成APK文件。 10. 运行应用程序 将生成的APK文件安装到Android设备上,然后运行应用程序。 以上就是基于Cordova打包Vue.js项目成为Android应用程序的详细步骤。需要注意的是,这只是其中一种打包的方式,还有其他工具和框架可以用来打包Vue.js项目成为移动应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值