# 配置

# 参数配置




 





 
 






import App from './App.vue'
import Vue from 'vue'
import VAQ from 'vue-apicloud-quickstart'
import pages from '@/config/pages.json'

Vue.config.productionTip = false

Vue
  .use(VAQ, {
    pages,
    debugOnPC: true
  })
  .init({
    el: '#app',
    render: h => h(App)
  })

# pages

  • 类型: Array
  • 默认值:

页面配置,配置每个页面的 titlenamepath,类似于 页面路由, 详见页面配置

# debugOnPC

  • 类型: Boolean

  • 默认值: false

    • debugOnPC 为默认值即 false 时, Vue 页面的实例将在 apireadyHooks 中执行,因此在 PC 端浏览器内无法预览调试页面。

    • debugOnPC 为 true 时,将直接执行 new Vue() 创建页面实例,此时,所有 api 相关的语句无法执行,但是与 api 无关的页面内容将会正常显示在浏览器内。

    • 推荐使用场景

      • 前期开发页面,调试样式时将 debugOnPC 设置为 true,可在 PC 浏览器端调试
      • 后期开发功能,调试功能时将 debugOnPC 设置为 false,在自定义Loader中调试
      • 或者也可以始终将 debugOnPC 设置为 false,在自定义Loader中调试
    • APICloud 会在 APPLoader 或者 自定义 Loader 中向 window 注入全局变量 api, 所以在移动端设备上使用 Loader 调试时可以通过 api 来实现调用原生模块的能力。为保证调用原生模块时都已经初始化完成,所有调用原生模块的语句都应该放在 apireadyHooks 中执行。

# 页面配置

# name

  • 类型: string
  • 默认值:

作为当前页面的唯一标识,不能与其他页面重复,将作为 APICloud 中 window 或 frame 的 name

# title

  • 类型: string
  • 默认值:

title 作为编译后 html 文件的 title,可为空,页面所展示的 title 不在此处配置

# path

  • 类型: string
  • 默认值:

是页面文件相对于 src/pages 目录的相对路径,不需要加文件扩展名,如 src/pages/login/index.vue 的 path 为 login/index

# 状态栏样式配置

# color

  • 类型: string
  • 默认值: #000

状态栏背景颜色,只 Android 5.0 及以上有效

# style

  • 类型: 'light' | 'dark'
  • 默认值: light

状态栏字体颜色,支持iOS,Android 支持小米 MIUI6.0 及以上手机,魅族 Flyme4.0 及以上手机,其他 Android6.0 及以上手机。Android 因设备厂商定制差异,频繁切换 style 不一定生效。若不设置,则自动通过 $isLightColor 判断所传背景颜色是否是浅色,浅色则为 dark, 否则为 light

# animated

  • 类型: boolean
  • 默认值: false

是否有动画效果,只iOS有效

示例:




 
 
 
 



<script>
export default {
  name: 'set-status-bar-style-demo',
  statusBar: {
    color: 'transparent',
    style: 'light'
  }
}
</script>



 
 
 
 
 



<script>
export default {
  name: 'set-status-bar-style-demo',
  statusBar: {
    color: 'transparent',
    style: 'light',
    animated: true
  }
}
</script>

typescript 中配置






 
 
 
 




<script lang="ts">
import { Component, Vue } from 'vue-property-decorator'
import { VueAPICloud } from 'vue-apicloud-quickstart'
@VueAPICloud
@Component({
  statusBar: {
    color: 'transparent',
    style: 'light'
  }
})
export default class Demo extends Vue {}
</script>

或者直接配置 colorstyle 将通过 $isLightColor 自动判断




 



<script>
export default {
  name: 'set-status-bar-style-demo',
  statusBar: 'transparent'
}
</script>



 



<script>
export default {
  name: 'set-status-bar-style-demo',
  statusBar: '#007ACC'
}
</script>

typescript 中配置





 



<script lang="ts">
import { Component, Vue } from 'vue-property-decorator'
import { VueAPICloud } from 'vue-apicloud-quickstart'
@VueAPICloud
@Component({ statusBar: 'transparent' })
export default class Demo extends Vue {}
</script>




 



<script lang="ts">
import { Component, Vue } from 'vue-property-decorator'
import { VueAPICloud } from 'vue-apicloud-quickstart'
@VueAPICloud
@Component({ statusBar: '#007ACC' })
export default class Demo extends Vue {}
</script>

# APICloud 应用配置

提示

config.xml中的配置项,详见APICloud 官方文档,以下文档来源为 APICloud 官方文档

注意

该 XML 文件必须采用UTF-8编码。

# Overview

# access

# Preference

# Feature

# Permission

# Meta-Data

# Intent-Filter

# Reference

完整的 config.xml 文件参考:

<widget id="A12345678901"  version="0.0.1">
    <name>API Example</name>
    <description>
        API Example App.
    </description>
    <author email="developer@apicloud.com" href="//www.apicloud.com">
        APICloud.SIR
    </author>
    <content src="index.html" />
    <access origin="*" />
    <preference name="pageBounce" value="false" />
    <preference name="appBackground" value="#000" />
    <preference name="windowBackground" value="rgba(0,0,0,0.0)" />
    <preference name="frameBackgroundColor" value="rgba(0,0,0,0.0)" />
    <preference name="hScrollBarEnabled" value="true" />
    <preference name="vScrollBarEnabled" value="true" />
    <preference name="autoLaunch" value="true" />
    <preference name="autoUpdate" value="true" />
    <preference name="smartUpdate" value="false" />
    <preference name="fullScreen" value="false" />
    <preference name="statusBarAppearance" value="true" />
    <preference name="softInputMode" value="resize"/>
    <preference name="debug" value="true"/>
    <permission name="readPhoneState" />
    <permission name="call" />
    <permission name="sms" />
    <permission name="camera" />
    <permission name="record" />
    <permission name="location" />
    <permission name="fileSystem" />
    <permission name="internet" />
    <permission name="bootCompleted" />
    <permission name="hardware" />
    <permission name="contact" />
    <feature name="weiXin">
        <param name="urlScheme" value="wx7779c7c063a9d4d9" />
        <param name="apiKey" value="wx7779c7c063a9d4d9" />
    </feature>
    <feature name="sinaWeiBo">
        <param name="urlScheme" value="wb1062272715" />
        <param name="apiKey" value="1062272715" />
    </feature>
    <feature name="aliPay">
         <param name="urlScheme" value="AliPayA00000000001" />
    </feature>
    <feature name="baiduLocation">
        <param name="apiKey" value="fef72715gshjelke" />
    </feature>
    <feature name="baiduMap">
        <param name="android_api_key" value="fef72715gshjelke" />
        <param name="ios_api_key" value="fef72715gshjelke" />
    </feature>
    <feature name="qq">
        <param name="urlScheme" value="tencent9c7c063a9d4d9" />
        <param name="apiKey" value="9c7c063a9d4d9" />
    </feature>
</widget>

# WIFI 同步忽略文件目录配置

  • 自定义 WiFi 同步时忽略的文件、文件夹
  • 支持标准的 Glob 表达式。

# 常用格式示例

  • 忽略某一类型的文件,如 *.js.map 文件:

    **/*.js.map
    
  • 忽略项目中所有某一名称的文件夹及其子文件(夹),如 node_modules 目录:

    **/node_modules/**
    
  • 忽略根目录中某一目录下的所有文件(夹), 如 src 目录:

    src/**
    
  • 基于自动化 webpack 等自动化构建工具常用的表达式:

    {**/*.js.map,**/node_modules/**,src/**}