开发中遇到的琐碎的问题
- 后端返回的数据,有时候拿到的数据的格式并不是我们想要的格式,后端一般返回的数据就是Json格式,name我们想要将json格式转换成对象
- 1 將需要转化的数据做如下的转化:
-
var obj = JSON.parse('{ "name":"Bill Gates", "age":62, "city":"Seattle"}')
- 2 转化后的数据就是我们想要的对象:
{ name:"Bill Gates", age:62, city:"Seattle"}
- 在微信小程序input的使用
- 如果使用的是input标签,那么想要获取到input中的值,那么就要使用bindinput='formName'(formName为函数的名称)然后在js文件中
formName:function(e){ this.setData({ (e就是得到的input的数据,具体就在对象e中获取) //赋值语句 }) },
- 如果使用的是input标签,那么想要获取到input中的值,那么就要使用bindinput='formName'(formName为函数的名称)然后在js文件中
-
但是在使用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.