在将this.queryForm.Arraypronew置空时,前端VUE报this.queryForm.Arraypronew.join is not a function,怎么解决这个报错并把this.queryForm.Arraypronew.join(',')置为空
时间: 2024-04-11 18:29:09 浏览: 57
报错`this.queryForm.Arraypronew.join is not a function`说明`this.queryForm.Arraypronew`不是一个数组,而是一个非数组的值。因此,不能直接调用数组的`join`方法。
要解决这个问题,你需要在将`this.queryForm.Arraypronew`置为空之前,先确保它是一个空数组。可以使用以下代码进行修改:
```javascript
this.queryForm.Arraypronew = [];
```
这将将`this.queryForm.Arraypronew`重置为空数组。然后,你就可以安全地调用`join`方法来将其转换为字符串,并将其置为空字符串:
```javascript
this.queryForm.Arraypronew.join(',') = '';
```
这样就可以避免报错,并将`this.queryForm.Arraypronew.join(',')`置为空字符串。
相关问题
解析这段代码:async getDataList() { this.dataLoading = true for(let i =0; i<this.queryForm.Arraykh.length; i++){ this.queryForm.Arraykhnew[i] = '\'' + this.queryForm.Arraykh[i] +'\'' } for(let i =0; i<this.queryForm.Arraypro.length; i++){ this.queryForm.Arraypronew[i] = '\'' + this.queryForm.Arraypro[i] +'\'' } let res = await this.$http.get('/sms/sms-qa-accident/page', { params: { id: this.queryForm.id, kh: this.queryForm.Arraykhnew.join(','), pro: this.queryForm.Arraypronew.join(','), Arraykh: this.queryForm.Arraykh.join(','), Arraykhnew: this.queryForm.Arraykhnew.join(','), current: this.pageIndex, size: this.pageSize } })
这段代码是一个异步函数`getDataList()`,它用于获取数据列表。
首先,代码中设置了一个变量`dataLoading`为true,用于表示数据加载中。
然后,通过for循环遍历`this.queryForm.Arraykh`数组,对每个元素进行处理并存储到`this.queryForm.Arraykhnew`数组中。具体处理方式是在元素两侧添加单引号。
接着,再次通过for循环遍历`this.queryForm.Arraypro`数组,对每个元素进行处理并存储到`this.queryForm.Arraypronew`数组中。同样,处理方式是在元素两侧添加单引号。
在之后的代码中,使用`this.$http.get`方法发送一个GET请求到指定的URL `/sms/sms-qa-accident/page`。请求参数包括:
- `id`: `this.queryForm.id`
- `kh`: `this.queryForm.Arraykhnew.join(',')`
- `pro`: `this.queryForm.Arraypronew.join(',')`
- `Arraykh`: `this.queryForm.Arraykh.join(',')`
- `Arraykhnew`: `this.queryForm.Arraykhnew.join(',')`
- `current`: `this.pageIndex`
- `size`: `this.pageSize`
最后,返回获取到的响应结果给变量`res`。
async getDataList() { this.dataLoading = true let res = await this.$http.get('/sms/sms-is/page', { params: { ...this.queryForm, id: this.queryForm.id, areaCode: this.queryForm.areaCode, kh: this.queryForm.kh, eventType: this.queryForm.eventType, eventLevel: this.queryForm.eventLevel, depCode: this.queryForm.depCode, fieldName: this.queryForm.fieldName, groupCode: this.queryForm.groupCode, userName: this.queryForm.userName, current: this.pageIndex, size: this.pageSize } })
这段代码是一个异步方法`getDataList()`,用于获取数据列表。
首先,将`dataLoading`变量设置为`true`,表示数据正在加载中。
然后,使用`this.$http.get()`方法发起一个GET请求,请求的URL是"/sms/sms-is/page"。通过传递一个参数对象作为第二个参数,该参数对象包含了查询参数。
查询参数包括了`this.queryForm`对象中的一些属性,比如`id`、`areaCode`、`kh`等。使用`...`操作符将`this.queryForm`对象中的属性展开,并将额外的属性`current`和`size`添加到参数对象中。
接着,使用`await`关键字等待请求的结果,将结果保存在`res`变量中。
值得注意的是,这段代码使用了异步函数和`await`关键字来处理异步操作,确保在获取数据之前将`dataLoading`设置为`true`。这样可以在数据加载完成后进行相应的处理。
阅读全文