开发中遇到的琐碎的问题

  1. 后端返回的数据,有时候拿到的数据的格式并不是我们想要的格式,后端一般返回的数据就是Json格式,name我们想要将json格式转换成对象  
    1. 1 將需要转化的数据做如下的转化:
    2. var obj = JSON.parse('{ "name":"Bill Gates", "age":62, "city":"Seattle"}')
    3. 2   转化后的数据就是我们想要的对象:
      { name:"Bill Gates", age:62, city:"Seattle"}
  2. 在微信小程序input的使用
    1.   如果使用的是input标签,那么想要获取到input中的值,那么就要使用bindinput='formName'(formName为函数的名称)然后在js文件中
      formName:function(e){
              this.setData({
             (e就是得到的input的数据,具体就在对象e中获取)
               //赋值语句
              })
          },
       
  3.  但是在使用IView Weapp中使用的标签是i-input,这个标签可没有上边的属性,我们如果在这个标签中设置bindinput属性,这个属性是没有作用的,我们在这个标签中只能通过这三个函数获取值:

    事件名说明返回值
    bind:change 当绑定值变化时触发的事件 event
    bind:focus 输入框 focus event
    bind:blur 输入框 blur event

    书写方式:

      <i-input value="{{ userInfo.name }}" title="姓名"  placeholder="名字" bind:blur="editName" />
    js:
      
    editName:function(e){
      (e就是返回的input的值对象)
    }  

   4.   在使用Element UI日期选择器时遇到的坑

     <el-data-picker>选择到的日期都是少一天的,比如我们选择日期是今天,起始它得到的值是昨天的日期,如果再设置小时什么的,都是00:00:00,所以这个日期就是昨天的00点,就相当于前天了,所以,你想使用日期选择器的使用,在<el-data-picker>中添加 value-format = "yyyy-mm-dd",如果最后要确切到今天,后端需要我们传的数据为new Date()处理过的,我们就需要给它设置具体的时间,那我们就要value-format = "yyyy-mm-dd hh-mm-ss",但是这样设置的话如果我们已开始使用的日期选择器,那我们的后边的hh-mm-ss起始都是00 ,那我们想包括今天,那我们就需要value-format = "yyyy-mm-dd 23-59-59",这样就包括今天了

      <el-form-item label="开始日期:" v-if="showAssessType">
              <el-date-picker value-format="yyyy-MM-dd hh:mm:ss" v-model="startTime" type="date" placeholder="日期" :picker-options="pickerOptions0" style="width: 140px"></el-date-picker>
          </el-form-item>
          <el-form-item label="结束日期:" v-if="showAssessType" >
            <el-date-picker value-format="yyyy-MM-dd 23:59:59" v-model="endTime" type="date" placeholder="日期" :picker-options="pickerOptions0" style="width: 140px"></el-date-picker>
          </el-form-item>

  

      上边说的是日期的选择器,如果是时间选择器,那就不会出现这样的问题,上边的问题就是日期选择器想包括今天,并且后端需要的时间数据是通过new Date()处理过的,我们就要通过上边的属性进行设置

     5.有时候我们需要给input设置前边的放大镜图标

     我们可以给input设置background-img先把放大镜的图标添加进来,并设置它的大小,但是现在它只是背景图,当我们在输入框输入内容时放大镜就会被覆盖,所以我们需要给input添加样式,使用padding将输入框的光标移到不覆盖背景中的放大镜,这样我们就在输入框中添加了图标。

      6.element UI中使用弹出确认框

this.$confirm('内容', '标题', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'success',
        callback: action => {
          if (action === 'confirm') {
            console.log('按下 确定')
          }
          else {
            console.log('按下 取消')
          }
        }
      })

    7.在设置背景图时,图片不能自适应父级的大小,此时最重要的就是设置一个属性:   background-size:100% 100%;(下图见效果)

                             

 

    8.

posted @ 2020-10-29 10:06  杨超(yc)  阅读(102)  评论(0编辑  收藏  举报