本文主要介绍移动端。为了避免移动端兼容出现各种奇奇怪怪的bug,所以秉承着能不用复杂的语法就不用,尽量用最基础的语法。 可用惯了各种ES6语法的童鞋们,写原生真是头疼,再加上各种领导催工期,肯定是内心各种烦躁。这里介绍一下,如何在H5中运vue 去写,嵌套到用到app中。

  1. 首先引入vue CDN ,记得去扒一个vue.js. 下载下来,不要用htpp,这样可以避免有些模块因为网卡导致,页面加载错乱。
<script src="./js/vue.min.js"></script>
    <div id="app"></div>

new Vue({
        el: "#app",
        data:function(){}
})
 

  2.你肯定也想用个uI库,那本人推荐一个vant .    使用看官网。 有的需要vant.Toast 。 安卓6.0 以下常出现数据加载不出的问题。看公司是否全兼容。

<script src="https://cdn.jsdelivr.net/npm/vant@2.2/lib/vant.min.js"></script>

3.  获取后台数据ajax 就够用了。去下载一个本地的吧.

<script src="./js/jquery-2.0.0.min.js"></script>

  4. 移动端布局如果是少量的用百分比,display:flex ,这个要做兼容 。 rem 也是可以用的。

// 记得UI尺寸/100 = 实际值 rem 。 默认UI尺寸750px. 小于750px 的手机请用百分比。像vivio6, oppo低版本手机常出现兼容问题。 不过现在大部分手机都已适用,看公司是否全兼容。 
<script>
var fontSize = 0;
(function (doc, win) {
//获取html节点和事件 和屏幕变化改变字体大小
const docEl = doc.documentElement,
resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
recalc = function () {
const clientWidth = docEl.clientWidth;
if (!clientWidth) return; //排除宽度没值
if (clientWidth >= 750) {
docEl.style.fontSize = '100px';
} else {
docEl.style.fontSize = 100 * (clientWidth / 750) + 'px';
}
}; function fontSizeFun() {
var size = 0;
var clientWidth = docEl.clientWidth;
if (!clientWidth) return; //排除宽度没值
if (clientWidth >= 750) {
size = 100;
} else {
size = 100 * (clientWidth / 750);
}
return size;
}
if (!doc.addEventListener) return;
win.addEventListener(resizeEvt, recalc, false);
doc.addEventListener("DOMContentLoaded", recalc, false);
fontSize = fontSizeFun();
win.addEventListener(resizeEvt, function () {
fontSize = fontSizeFun();
}, false);
doc.addEventListener("DOMContentLoaded", function () {
fontSize = fontSizeFun();
}, false);
})(document, window);
</script>

  

5. ES6 语法的兼容处理。

<script src="https://cdn.polyfill.io/v2/polyfill.min.js"></script>

  6. 没有用vue-router, 用到的是 window.location.href 跳的,比较生硬。 看到网上有一种方法:

然后在index.html 通过router-view来渲染A和B两个页面。  A,B作为它的组件。  另外的一个嵌套app的H5 , 是也是通过window.location.href 跳的或者a标签 。 在浏览器可以正常下载,但移动端不行。查了好多文档,并没有太好的解决方案,app 可以通过调取用插件打开本地文件,嵌套的H5暂时没有好的处理方案。

如何在嵌套的app中运用vue去写单页面H5的更多相关文章

  1. 每天记录一点:NetCore获得配置文件 appsettings.json vue-router页面传值及接收值 详解webpack + vue + node 打造单页面(入门篇) 30分钟手把手教你学webpack实战 vue.js+webpack模块管理及组件开发

    每天记录一点:NetCore获得配置文件 appsettings.json   用NetCore做项目如果用EF  ORM在网上有很多的配置连接字符串,读取以及使用方法 由于很多朋友用的其他ORM如S ...

  2. Java快速开发平台强大的代码生成器,JEECG 3.7.5 VUE+ElementUI SPA单页面应用版本发布

    JEECG 3.7.5 VUE+ElementUI SPA单页面应用版本发布 此版本为Vue+ElementUI SPA单页面应用版本,提供新一代风格代码生成器模板,采用Vue技术,提供两套精美模板E ...

  3. day 100天 VUE 父子传值,单页面.

     一 .静态资源导入方法 启动服务  npm run serve <template> <div id ="app"> <h3>{{msg}}& ...

  4. vue如何将单页面改造成多页面应用

    问题描述: 手头有一个项目是使用 vue-cli 搭建的单页面应用.项目分为了管理平台和用户查看页面,用户查看页面是很简单的页面,但是在加载过程中,却加载了整个应用的打包代码,量重且影响了响应和体验. ...

  5. spring boot使用vue+vue-router构建单页面应用

    spring boot http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/ vue https: ...

  6. 使用VS2017开发APP中使用VUE.js开发遇到打包出来的android文件 在低版本的android(4.3)中无法正常使用

    使用VS2017开发VUE的APP应用遇到的问题集合 1,  打包出来的apk文件在Android 6.0版本以上手机可以正常打开,在Android 4.3版本手机上无法打开 原因:一开始猜测是不是V ...

  7. 客户端相关知识学习(四)之H5页面如何嵌套到APP中

    Android原生如何渲染H5页面 Android与 H5 的交互方式大概有以下 1 种: 利用WebView进行交互(系统API) iOS原生如何渲染H5页面 iOS 与 H5 的交互方式大概有以下 ...

  8. 借助 Vue 来构建单页面应用

    原文: https://github.com/MeCKodo/vue-tutorial 主题 Vue.js (1/2)Vue构建单页应用最佳实战 前言 我们将会选择使用一些vue周边的库 1.使用no ...

  9. vue-cli搭建vue项目(单页面应用)

    1.全局安装vue-cli 2.创建项目: vue init webpack test test是项目名称,会在当前工作目录下新建一个test文件夹 接下来会手动选择一些配置 除了Setup unit ...

随机推荐

  1. css文本内容大于内本显示框设置其显示方式

    1. <style type="text/css"> .text-ellipsis{ overflow: hidden;//隐藏滚动条 white-space: now ...

  2. 基于TI 多核DSP 的大数据智能计算处理解决方案

    北京太速科技有限公司 大数据智能计算,是未来的一个发展趋势,大数据计算系统主要完成数据的存储和管理:数据的检索与智能计算. 特别是在智能城市领域,由于人口聚集给城市带来了交通.医疗.建筑等各方面的压力 ...

  3. vue,一路走来(12)--父与子之间传参

    今天想起一直没有记录父组件与子组件的传参问题,这在项目中一直用到. 父向子组件传参 Index.vue父组件中 <component-a :msgfromfa="(positionno ...

  4. spring整合消息队列rabbitmq

    ps:本文只是简单一个整合介绍,属于抛砖引玉,具体实现还需大家深入研究哈.. 1.首先是生产者配置 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 ...

  5. Kettle5.4.0 java.lang.OutOfMemoryError

    CPU: Intel i3 3.40GHz Memory : 8G Kettle默认配置 将MySQL上的一张29W条数据的表,通过Kettle增量抽取到Vertica数据库中,结果在排序这一步报内存 ...

  6. SpringCloud-Nexfilx

    1.概述 Spring Cloud Netflix provides Netflix OSS integrations for Spring Boot apps through autoconfigu ...

  7. Exception和Error区别

    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11393728.html Exception和Error都是继承了Throwable类,在Java中只有 ...

  8. JAVA代码覆盖率采集与分析方案

    原文地址-> http://m.blog.csdn.net/article/details?id=48688763

  9. 【leetcode】668. Kth Smallest Number in Multiplication Table

    题目如下: 解题思路:几乎和[leetcode]719. Find K-th Smallest Pair Distance 的方法一样.只不过一个是减法一个是乘法,还有一点区别是[leetcode]7 ...

  10. MYSQL5.7.9改密码相关设置

    Centos7上,对MySQL5.7开启远程连接. 1.修改/etc/my.cnf [mysqld] validate_password=off 2.命令行进入mysql use mysql; GRA ...