uniapp+vue+uview适配安卓4.4项目实现简单登录和操作页面

简介: uniapp+vue+uview适配安卓4.4项目实现简单登录和操作页面

前言

大家好 我是歌谣 最近遇到了一个新的问题 就是兼容一个安卓4.4的平板仪器 利用react打包之后再用Hbulderx打包成apk之后白屏 于是就开始漫长的尝试过程


转折

多方测试发现 原生js可以识别 于是乎开始了原生js的开发

<!DOCTYPE html>
<html class="ui-page-login">
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
        <title></title>
        <link href="css/mui.min.css" rel="stylesheet" />
        <link href="css/style.css" rel="stylesheet" />
        <style>
            .area {
                margin: 20px auto 0px auto;
            }
            .mui-input-group {
                margin-top: 10px;
            }
            .mui-input-group:first-child {
                margin-top: 20px;
            }
            .mui-input-group label {
                width: 22%;
            }
            .mui-input-row label~input,
            .mui-input-row label~select,
            .mui-input-row label~textarea {
                width: 78%;
            }
            .mui-checkbox input[type=checkbox],
            .mui-radio input[type=radio] {
                top: 6px;
            }
            .mui-content-padded {
                margin-top: 25px;
            }
            .mui-btn {
                padding: 10px;
            }
            .link-area {
                display: block;
                margin-top: 25px;
                text-align: center;
            }
            .spliter {
                color: #bbb;
                padding: 0px 8px;
            }
            .oauth-area {
                position: absolute;
                bottom: 20px;
                left: 0px;
                text-align: center;
                width: 100%;
                padding: 0px;
                margin: 0px;
            }
            .oauth-area .oauth-btn {
                display: inline-block;
                width: 50px;
                height: 50px;
                background-size: 30px 30px;
                background-position: center center;
                background-repeat: no-repeat;
                margin: 0px 20px;
                /*-webkit-filter: grayscale(100%); */
                border: solid 1px #ddd;
                border-radius: 25px;
            }
            .oauth-area .oauth-btn:active {
                border: solid 1px #aaa;
            }
            .oauth-area .oauth-btn.disabled {
                background-color: #ddd;
            }
        </style>
    </head>
    <body>
        <header class="mui-bar mui-bar-nav">
            <h1 class="mui-title">登录</h1>
        </header>
        <div class="mui-content">
            <form id='login-form' class="mui-input-group">
                <div class="mui-input-row">
                    <label>账号</label>
                    <input id='account' type="text" class="mui-input-clear mui-input" placeholder="请输入账号">
                </div>
                <div class="mui-input-row">
                    <label>密码</label>
                    <input id='password' type="password" class="mui-input-clear mui-input" placeholder="请输入密码">
                </div>
            </form>
            <div class="mui-content-padded">
                <button  id='login' class="mui-btn mui-btn-block mui-btn-primary">登录</button>
            <!--    <div class="link-area"><a id='reg'>注册账号</a> <span class="spliter">|</span> <a id='forgetPassword'>忘记密码</a>
                </div> -->
            </div>
        </div>
        <script src="js/mui.min.js"></script>
        <script src="js/mui.enterfocus.js"></script>
        <script src="js/app.js"></script>
        <script>
            var login=document.getElementById("login");
            var account=document.getElementById("account")
            var password=document.getElementById("password")
            var test=document.getElementById("test")
            //监听点击事件
            login.addEventListener("tap",function () {
                mui.ajax('http://xxxxxx/pda/login',{
                    data:{
                        account:document.getElementById("account").value,
                        password:document.getElementById("password").value
                    },
                    dataType:'json',//服务器返回json格式数据
                    type:'post',//HTTP请求类型
                    timeout:10000,//超时时间设置为10秒;
                    headers:{'Content-Type':'application/json'},                  
                    success:function(response){
                        // test.innerHTML=JSON.stringify(response)
                        if(response.code==200){
                            window.location.href="./home.html"
                            mui.toast('登陆成功',{ duration:'long', type:'div' })
                        }else{
                            mui.toast('登陆失败',{ duration:'long', type:'div' })
                        }
                        //服务器返回响应,根据响应结果,分析是否登录成功;
                    },
                    error:function(xhr,type,errorThrown){
                        // test.innerHTML=JSON.stringify(xhr)
                        //异常处理;
                        console.log(type);
                    }
                });
            });
            //触发submit按钮的点击事件
            mui.trigger(login,'tap')
        </script>
    </body>
</html>

结果

结果遇到了一些问题 无法进行数据的双向绑定


实现结果

image.png


接着就开始换一种思路

利用uniapp+uview1.8+vue开发 login.vue

<template>
    <view class="content">
        <!--    <image class="logo" src="/static/logo.png"></image>
        <view class="text-area">
            <text class="title">
                uView - 多平台快速开发的UI框架
            </text>
        </view>
        <view class="button-demo">
            <u-button type="primary" plain @click="$u.route('/pages/login/login')">通用登录页展示</u-button>
        </view> -->
        <u-form :model="form" ref="uForm">
            <u-form-item label="姓名">
                <u-input v-model="form.account" placeholder="请输入账号"></u-input>
            </u-form-item>
            <u-form-item label="密码">
                <u-input v-model="form.password"  placeholder="请输入密码"></u-input>
            </u-form-item>
        </u-form>
        <view style="padding: 20px;">
        <u-button v-on:click="handleClick" type="primary" text="登录">登录</u-button>
        </view>
    </view>
</template>
<script>
    export default {
        data() {
            return {
                title: 'Hello',
                form: {
                    account: "",
                    password:""
                },
                status:"1"
            }
        },
        onLoad() {
        },
        methods: {
             handleClick(){
                // this.status="-1"
                // var that=this
                 uni.$u.http.post('http://xxxxxx',{account: this.form.account, password: this.form.password}).then(res => {
                      console.log(this,"22222")
                // that.status="-1"
                uni.navigateTo({
                    url: '/pages/index/index',
                });
                }).catch(err => {
                    console.log("-----------”")
                console.log(err,"11111")
                console.log("-----------”")
                })
            }
        }
    }
</script>
<style lang="scss" scoped>
    .content {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 40rpx;
    }
    .logo {
        height: 200rpx;
        width: 200rpx;
        margin-top: 100rpx;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 50rpx;
    }
    .text-area {
        display: flex;
        justify-content: center;
    }
    .title {
        font-size: 28rpx;
        color: $u-content-color;
    }
    .button-demo {
        margin-top: 80rpx;
    }
</style>
相关文章
|
4月前
|
移动开发 前端开发 Android开发
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
478 12
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
5月前
|
存储 消息中间件 人工智能
【05】AI辅助编程完整的安卓二次商业实战-消息页面媒体对象(Media Object)布局实战调整-按钮样式调整实践-优雅草伊凡
【05】AI辅助编程完整的安卓二次商业实战-消息页面媒体对象(Media Object)布局实战调整-按钮样式调整实践-优雅草伊凡
176 11
【05】AI辅助编程完整的安卓二次商业实战-消息页面媒体对象(Media Object)布局实战调整-按钮样式调整实践-优雅草伊凡
|
4月前
|
移动开发 Android开发
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
237 0
|
12月前
|
JavaScript 前端开发 Android开发
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
431 13
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
|
11月前
|
JSON 自然语言处理 前端开发
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
582 72
【01】对APP进行语言包功能开发-APP自动识别地区ip后分配对应的语言功能复杂吗?-成熟app项目语言包功能定制开发-前端以uniapp-基于vue.js后端以laravel基于php为例项目实战-优雅草卓伊凡
|
11月前
|
JavaScript 前端开发 算法
vue渲染页面的原理
vue渲染页面的原理
307 56
|
8月前
|
JavaScript 前端开发 UED
Vue 项目中如何自定义实用的进度条组件
本文介绍了如何使用Vue.js创建一个灵活多样的自定义进度条组件。该组件可接受进度段数据数组作为输入,动态渲染进度段,支持动画效果和内容展示。当进度超出总长时,超出部分将以红色填充。文章详细描述了组件的设计目标、实现步骤(包括props定义、宽度计算、模板渲染、动画处理及超出部分的显示),并提供了使用示例。通过此组件,开发者可根据项目需求灵活展示进度情况,优化用户体验。资源地址:[https://pan.quark.cn/s/35324205c62b](https://pan.quark.cn/s/35324205c62b)。
385 0
|
12月前
|
人工智能 JavaScript 关系型数据库
【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
458 14
【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
|
12月前
|
前端开发 JavaScript Java
【03】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架搭建-服务端-后台管理-整体搭建-优雅草卓伊凡商业项目实战
【03】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架搭建-服务端-后台管理-整体搭建-优雅草卓伊凡商业项目实战
590 13
【03】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架搭建-服务端-后台管理-整体搭建-优雅草卓伊凡商业项目实战
|
12月前
|
SQL JavaScript 安全
【04】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架二次开发准备工作-以及建立初步后端目录菜单列-优雅草卓伊凡商业项目实战
【04】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架二次开发准备工作-以及建立初步后端目录菜单列-优雅草卓伊凡商业项目实战
521 11
【04】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架二次开发准备工作-以及建立初步后端目录菜单列-优雅草卓伊凡商业项目实战

热门文章

最新文章