zoukankan      html  css  js  c++  java
  • Vue2.5 旅游项目实例26 联调测试上线-真机测试

    我们访问项目都是在浏览器输入 http://localhost:8080/#/

    打开一个命令行窗口,获取当前机器的内网IP

    window输入:ipconfig

    mac输入:ifconfig

    得到自己的内网ip后,按说输入 http://192.168.0.xxx:8080 一样可以访问到项目,但是却报错,显示无法访问。

    这是因为我们前端的项目,是通过 webpack 的 dev server启动的,但是 webpack 的 dev server 默认不支持通过IP的形式进行页面的访问。所以我们需要把它默认的配置项做一个修改。

    打开代码,在项目的根目录下有一个package.json文件:

    "scripts": {
        "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
    
    // 修改为
    
    "scripts": {
        "dev": "webpack-dev-server --host 0.0.0.0 --inline --progress --config build/webpack.dev.conf.js",

    保存后,重启服务。

    这时输入 http://192.168.0.xxx:8080/#/ 就可以访问了。

    我们可以通过手机连接内网,在手机浏览器输入IP地址访问页面,然后就可以在手机上进行各项的测试了。

    当我们访问到城市列表页,拖动右侧字母表时,发现整个屏幕都会跟着上下滚动,所以我们要修改下代码。

    打开city目录下的Alphabet.vue文件,添加事件修饰符 prevent :

    <li class="item" @click="handleClick"
          @touchstart.prevent="handleTouchStart"
          @touchmove="handleTouchMove"
          @touchend="handleTouchEnd"
          v-for="item in letters" :key="item" :ref="item">{{item}}</li>

    然后重新刷新页面,手指滑动字母表,就跟着切换了。

    当然不同手机可能测试的效果不太一样,比如低版本的安卓手机,可能会出现白屏的效果。

    这可能是两种情况造成的:

    1.你的手机浏览器默认不支持Promise

    解决办法:安装第三方的包 babel-polyfill 

    npm install babel-polyfill --save

    这个包的作用是:会判断如果浏览器没有 Promise ,会自动往里添加这些ES6的新特性。

    安装完成后,重启下服务,在打开main.js文件,添加引入:

    import 'babel-polyfill'

    再刷新页面,没有问题了。

    2.webpack dev server的问题

    解决办法:打包上线测试

  • 相关阅读:
    start tag, end tag issues in IE7, particularly in xslt transformation
    用SandCastle为注释生成chm文档
    Firebug
    架构的重点
    Linux Shell常用技巧(十) 管道组合
    Linux JDK升级
    Linux Shell常用技巧(十二) Shell编程
    Packet Tracer 5.0实验(一) 交换机的基本配置与管理
    Linux Shell常用技巧(六) sort uniq tar split
    Linux Shell常用技巧(二) grep
  • 原文地址:https://www.cnblogs.com/joe235/p/12518767.html
Copyright © 2011-2022 走看看