[bugfix] Area: should valid data before get area list (#520)

This commit is contained in:
neverland 2018-01-09 11:31:44 +08:00 committed by GitHub
parent 9634bc6ae4
commit 0b33cbddb6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -35,11 +35,14 @@ export default create({
},
computed: {
listValid() {
return this.areaList && typeof this.areaList.province_list === 'object';
},
columns() {
const columns = [];
const { areaList } = this;
if (!areaList || typeof areaList.province_list !== 'object') {
if (!this.listValid) {
return columns;
}
@ -91,6 +94,10 @@ export default create({
// `code`
getList(type, code) {
if (!this.listValid) {
return [];
}
const { areaList } = this;
const list =
type === 'province'
@ -118,11 +125,10 @@ export default create({
getIndex(type, code) {
const compareNum = type === 'province' ? 2 : type === 'city' ? 4 : 6;
const areaList = this.getList(type, code.slice(0, compareNum - 2));
code = code.slice(0, compareNum);
for (let i = 0; i < areaList.length; i++) {
if (
+areaList[i].code.slice(0, compareNum) === +code.slice(0, compareNum)
) {
if (areaList[i].code.slice(0, compareNum) === code) {
return i;
}
}