weex iOS input

2020-05-09 10:50:47 阅读:1 编辑
<template>
    <scroller ref="scroller" :style="style">
        <div style="width:750px;height: 70px;" ref="div">

        </div>
        <text v-for="(item,index) in lists" class="text">{{item}}</text>
        <text  class="text" style="margin-top: 50px;margin-bottom: 50px;" @click="click">height</text>
        <input type="text" ref="input" value="123" hideDoneButton="true" return-key-type="done"></input>
        <text v-for="(item,index) in lists2"  class="text">{{item}}</text>

    </scroller>
</template>
<style scoped>
    .text{
        font-size: 30px;
        padding-top: 30px;
    }
</style>
<script>
    import wx from './../../common/wx';
    import Textarea from "../../common/components/textarea";
    export default {
        components: {Textarea},
        data:function(){
            return {
                lists:[],
                lists2:[],
                style:{
                    borderColor: "red",
                    borderWidth: "2px",

                }
            };
        },
        methods:{
            click(){
                var that = this;
                const dom = weex.requireModule('dom')
                dom.scrollToElement(this.$refs.input, { offset: 0 })
                //this.style = {top:0,position: "fixed"};
                // const dom = weex.requireModule('dom')
                //dom.scrollToElement(this.$refs.div, { offset: 0 })
                //wx.alert(this.$refs.scroller)
                /*const dom = weex.requireModule('dom')
                setTimeout(function () {
                    dom.getComponentRect("viewport",function (res) {
                        wx.alert(res);
                    });
                },100)*/
            },
            keyboard(e){
                //wx.log(e.keyboardSize);
            },
            onreturn(e){
                if(e.returnKeyType == "done"){
                    var tool = weex.requireModule('bmTool')
                    tool.resignKeyboard(function(resData){          // 回调
                        // 结果的回调
                        //  resData = {
                        //      status: 0 || 9,  // 是否成功
                        //      errorMsg: nil,
                        //      data: nil
                        //  }
                    });
                }
//wx.log(e.returnKeyType);
            },
            focus(){
                //const dom = weex.requireModule('dom')
                //dom.scrollToElement(this.$refs.input, { offset: 0 })
            },
            blur(e){
                /*var tool = weex.requireModule('bmTool')
                tool.resignKeyboard(function(resData){          // 回调
                    // 结果的回调
                    //  resData = {
                    //      status: 0 || 9,  // 是否成功
                    //      errorMsg: nil,
                    //      data: nil
                    //  }
                });*/
                // wx.log("blur");
                //const dom = weex.requireModule('dom')
                //dom.scrollToElement(this.$refs.scroller, { offset: 0 })
            }
        },
        mounted() {
            var lists = [];
            for(var i=0;i<12;++i){
                lists.push(i);
            }
            this.lists = lists;
            this.lists2 = lists;
            /*  var axios = weex.requireModule('bmAxios');
              // 示例
              axios.fetch({
                  method: 'GET',                // 请求类型 GET、POST、HEAD、PUT、DELETE、PATCH
                  url: 'http://build.zhyxm.com/api/test_api',       // 请求api,完整地址
                  header: {},                   // 自定义请求头requestHeader
                  data: {},                    // 请求参数
                  timeout: 3000                // 超时时间(耗秒):默认3000毫秒
              }, function(resData){
                  wx.alert(resData);
                  // resData 数据
                  // {
                  //    status:200,   // http 请求状态吗
                  //    errorMsg: '错误信息',
                  //    data: 数据
                  // }
              })*/

        }
    }
</script>