Ionic4+Vue+Capacitor 初体验

注:本文的目的在于记录本身基于最新的Ionic4构建一个App,也为一样需求的小伙伴提供参考。第一次写文章,文笔笨拙,还请见谅,不对之处,还请指出。css


最新的Ionic4已经提供了其余 js 框架的支持,VueReact 等等,甚至不使用框架。接下来我将使用 VueIonic 开发一个最简单的app。vue

建立项目

使用Vue Cli建立一个Vue项目(默认配置):android

npm install -g @vue/cli
vue create ionic-vue-app

cd ionic-vue-app

启动项目,看看是否建立成功:webpack

npm run serve

clipboard.png
clipboard.png

成功了,接下来咱们为项目添加 Vue RouterIonic 框架。web

vue add router
npm install @ionic/vue

安装完成后,还须要引入到咱们的项目中,这样就可使用 Ionic 的组件了。
首先打开 src/main.js, 添加下面三行代码:vue-router

import Ionic from '@ionic/vue';
import '@ionic/core/css/ionic.bundle.css';

Vue.use(Ionic);

clipboard.png

接下来修改src/router.js:npm

import Vue from 'vue'
import Home from './views/Home.vue'
import { IonicVueRouter } from '@ionic/vue';

Vue.use(IonicVueRouter);

export default new IonicVueRouter({
  mode: 'history',
  base: process.env.BASE_URL,
  routes: [
    {
      path: '/',
      name: 'home',
      component: Home
    },
    {
      path: '/about',
      name: 'about',
      // route level code-splitting
      // this generates a separate chunk (about.[hash].js) for this route
      // which is lazy-loaded when the route is visited.
      component: () => import(/* webpackChunkName: "about" */ './views/About.vue')
    }
  ]
})

如今,咱们就能够访问Ionic的组件了,以下修改Home.vue的代码。json

<template>
  <div class="home">
    <div class="ion-page">
      <ion-header>
        <ion-toolbar>
          <ion-title>Hello World</ion-title>
        </ion-toolbar>
      </ion-header>
      <ion-content class="ion-padding">
        <h1>Welcome To @ionic/vue</h1>
        <img alt="Vue logo" src="../assets/logo.png">
      </ion-content>
    </div>
  </div>
</template>

<script>
export default {
  name: 'home'
}
</script>

clipboard.png

ion-action-sheet 为例,直接去官网复制示例代码:浏览器

clipboard.png

clipboard.png

完美~app


那么如何把代码打包成为一个app呢,首先借助 ionic 开发的 capacitor,他是一个相似于 cordova 的能够提供本机接口的工具,同时它也兼容不少现有的 cordova 插件。咱们回归到代码(如下仅演示Android环境):

首先,咱们须要把咱们的 vue 项目变成一个 ionic 项目:

ionic init

clipboard.png

注意:Project type 选择 custom (custom)

而后咱们在该项目中安装capacitor:

npm install --save @capacitor/core @capacitor/cli

而后初始化 capacitorApp nameApp Package ID 根据你本身的项目去进行填写

npx cap init

初始化以后咱们须要改一下 capacitor.config.json 里的 webDir,改为 dist,由于vue项目的构建目录为dist,这样能够省的咱们去复制代码到 www 目录(而且咱们也没有建立 www 目录)。

"webDir": "dist"

接下来咱们构建项目:

npm run build

而后咱们使用 capacitor 添加对Android平台的支持,并将构建的代码拷贝到Android项目库里:

npx cap add android
npx cap copy android

如今咱们就可使用Android Studio打开项目,使用模拟器运行项目,或是构建app。
也能够直接使用 capacitor启动Android Studio,运行:

npx cap open android

使用模拟器运行项目

clipboard.png

clipboard.png

clipboard.png

clipboard.png

完美~,那么本次的初体验就到此结束了,capacitor 的插件使用能够参考官方文档哦。

运行环境:

  1. 浏览器:Chrome
  2. 编辑器:VS Code
  3. 软件版本:
"dependencies": {
    "@capacitor/android": "^1.0.0",
    "@capacitor/cli": "^1.0.0",
    "@capacitor/core": "^1.0.0",
    "@ionic/vue": "0.0.4",
    "core-js": "^2.6.5",
    "vue": "^2.6.10",
    "vue-router": "^3.0.3"
  },

参考资料:

  1. Ionic文档
  2. Capacitor文档
  3. Ionic宣布vue测试版
相关文章
相关标签/搜索