VIP用户交流群:462197261 收藏本站北冥有鱼 互联网前沿资源第一站 助力全行业互联网+
在线客服:78895949
tonglan
  • 当前位置:
  • 基于vue-cli3多页面开发apicloud应用的教程详解第1/2页

    之前开发项APP项目直接用APICloud+原生js的方式进行编写,整个项目下来发现开发慢,页面代码多且复杂,维护起来相对困难,而且文件大打包之后的APP会比较大,apicloud的框架也不好用,支持部分es67(像let、const、import等es6新特性不支持写的太难受了)

    采用vue-cli+APIcloud的方式写解决以上痛点,开发灵活,并且打包之后体积更小速度更快

    环境依赖

    • vue
    • webpack
    • vue-cli3
    • nodeJS

    基本流程

    项目开发最好准备两个项目,一个打包APP,一个项目开发,也会减少很多不必要的麻烦

    创建项目并初始化

    cd到项目想要创建的位置,执行:

    vue create vue-for-apicloud

    选择Manually select features

    根据自己需求选择模块(不要Router,因为vue-router跳转页面的效果相比window和frame相比差太多了),按空格键选中,按回车完成选择:

    选择css预处理器语言,选择之后可以获得预处理语言支持:

    选择eslint:

    剩下的配置根据自己情况来设定,等待项目创建完成。

    项目结构

    项目结构如图:

     

    多页面配置

    项目根目录下创建vue.config.js

    const pages = require('./build/pages')
    module.exports = {
     publicPath: './',
     pages: pages,
     // 是否生成sourceMap文件
     // 开发环境配置true,方便快速定位错误(APICloud控制台输出真的很难受)
     // 生产环境配置false,构建速度更快,打包之后体积更小
     productionSourceMap: true
    }

    项目根目录下创建build文件夹,bulid文件夹下创建page.js

    const glob = require('glob')

    // 循环获取文件并打包
    console.log('获取页面文件中...')
    // 读取src/views下所有main.js,可根据自己的情况更改
    const files = glob.sync('**/views/**/main.js')
    const pages = {}
    files.forEach(item => {
    // 默认输出到dis文件夹下,输出格式为文件夹名(如果文件夹名为frame则为父文件夹名+frame).html
    const items = item.split('/')
    let page = items[items.length - 2]
    const pageParent = items[items.length - 3]
    if (page === 'frame') {
    page = `${pageParent}Frame`
    }
    pages
    12下一页阅读全文

    您可能感兴趣的文章:

    • Vue CLI3基础学习之pages构建多页应用
    • 通过vue-cli3构建一个SSR应用程序的方法
    • 详解Vue CLI3 多页应用实践和源码设计
    • vue-cli实现多页面多路由的示例代码
    • 详解如何将 Vue-cli 改造成支持多页面的 history 模式
    • Vue-cli创建项目从单页面到多页面的方法
    • 详解vue-cli + webpack 多页面实例配置优化方法
    • 详解vue-cli + webpack 多页面实例应用

    广而告之:
    热门推荐:
    wdcp面板添加二级域名手机域名m方法

    第一、我们需要在WDCP环境中已有这个域名的一级域名添加在里面   如果我们需要让主机/站点支持泛解析域名,那我们需要在"对泛域名的支持,一般不需要开启"勾选,然后在绑定域名里添加*.域名设置。 第二、设置二级域名 点击···

    HTML 使用表单标签实现注册页面的实例代码

    案例说明:          - 使用表格实现页面效果      - 超链接不想要有效果,使用href="#"     - 如果表格里面的单元格没有内容,使用空格作为占位符 &nbsp;     - 使用图片标签提交表单 <input type="image" src="···

    JS中数组与对象的遍历方法实例小结

    本文实例讲述了JS中数组与对象的遍历方法。分享给大家供大家参考,具体如下: 一、数组的遍历: 首先定义一个数组 arr=['snow','bran','king','nightking']; 1、for循环,需要知道数组的长度; 2、foreach,没有返回值,可以不知道数组长度; arr.forEach(function(ele,index)···

    JS获取指定月份的天数两种实现方法

    最近看到一个有意思的试题,正好在需求中也碰到类似的问题,即计算某个月的天数问题。碰到类似问题也许大部分会想是不是还要判断闰年、平年,如果这样想的话就复杂了,下面给出具体的计算方法。 获取月份天数方法一: //传入年份和月份 获取该年对应月份的天数 function getMo···

    PHP中使用xmlreader读取xml数据示例

    有一个XML文件,内容如下: 复制代码 代码如下: <?xml version="1.0"?>  <shows>      <show>          <name>Simpsons</name>      ···

    jQuery EasyUI Layout实现tabs标签的实例

    jQuery EasyUI Layout实现tabs标签的实例 一、概述: 1、引入jquery.js与easyUi相关文件 2、效果如图: 二、创建Layout主页: <%@ page language="java" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> <!DO···

    PHP中file

    介绍 我发现了一个问题,今天与大家分享。我把整个过程描述一下。 问题:公司有个框架是基于smarty写的,我负责php的升级,维护人员把新环境布上来之后,测试人员找我提出经常报错(错误:提示找不到文件的)。 我追踪了一下代码,原来是smarty的这个地方报的错误。     错···

    php calender(日历)二个版本代码示例(解决2038问题)

    注意32位机有2038问题,所以32位服务器的年限范围1970年~2038年 我们还可以使用DateTime来规避这个问题(这样与32位64位无关了) 复制代码 代码如下:<?php/** *  * 我的日历 * date_default_timezone_set date mktime * @param int $year * @···

    css判断某元素的子元素个数并分别设置样式的方法

    工作时遇到这样一个问题:根据某元素所包含的子元素个数,分别设置不同的样式,这个用js可以解决,不过个人认为用css解决可能更简单一点。这也正好加深了我对css选择器的理解和运用。 demo如下: 效果图如下 完整代码如下: <!DOCTYPE html> <html> <head···

    javascript实现自由编辑图片代码详解

    当下我们项目中需要一个可自由编辑图片的功能,当图片可能出现需要频繁编辑,同时能满足发现裁剪不满意想要微调的时候,会发现如果我们处理图片按照平常的习惯,如裁剪后上传服务器或者转base64,都是不符合需求的。那么该怎么处理比较好呢?如何以尽量少的网络请求、少占用存···