toFormData
function toFormData(data = {})
{
try {
const formData = new FormData();
Object.keys(data).forEach(k => {
if (null === data[k] || '' === data[k]) {
formData.append(k, '');
} else {
formData.append(k, data[k]);
}
});
return formData;
} catch (e) {
throw new TypeError(e);
}
}
使用
Vue.prototype.toFormData = toFormData;
new Vue({
el: '#app',
router,
render: h => h(App),
});
export default {
data() {
return {
user: {
name: '',
age: '',
},
};
},
methods: {
submit() {
const data = this.toFormData(this.user);
// console.log(this.user);
// for (let item of data.entries()) {console.log(item)}
this.$http.post(`/users`, data)
.then(res => console.log(res))
.catch(err => this.$Notice.error({desc: err.message}));
},
},
}
无关的。
if(typeof Object.prototype.toFormData === 'undefined') {
class cObject extends Object {
constructor(){super()}
static toFormData(data = {})
{
try {
const formData = new FormData();
Object.keys(data).forEach(k => {
if (null === data[k] || '' === data[k]) {
formData.append(k, '');
} else {
formData.append(k, data[k]);
}
});
return formData;
} catch (e) {
throw new TypeError(e);
}
}
}
// Object.prototype.toFormData = function (data = {}) {
// try {
// const formData = new FormData();
// Object.keys(data).forEach(k => {
// if (null === data[k] || '' === data[k]) {
// formData.append(k, '');
// } else {
// formData.append(k, data[k]);
// }
// });
// return formData;
// } catch (e) {
// throw new TypeError(e);
// }
// };
}
本作品采用《CC 协议》,转载必须注明作者和本文链接
默默问一句,可能这不是比较好的做法,请问下大家有没有什么建议 :pensive: