diff --git a/public/static/plugs/lay-module/propertyInput/propertyInput.html b/public/static/plugs/lay-module/propertyInput/propertyInput.html index c5c4f7d..830fa03 100644 --- a/public/static/plugs/lay-module/propertyInput/propertyInput.html +++ b/public/static/plugs/lay-module/propertyInput/propertyInput.html @@ -1,14 +1,12 @@
- + - - {{item.title}} - 操作 - - - + + + + @@ -19,6 +17,10 @@
+ + {{item.title}} + 操作 +
diff --git a/public/static/plugs/lay-module/propertyInput/propertyInput.js b/public/static/plugs/lay-module/propertyInput/propertyInput.js index 279c8b2..fcd976d 100644 --- a/public/static/plugs/lay-module/propertyInput/propertyInput.js +++ b/public/static/plugs/lay-module/propertyInput/propertyInput.js @@ -109,6 +109,13 @@ } } + // 如果value缺少uid,则生成 + for (var i = 0; i < options.value.length; i++) { + if (!options.value[i].uid) { + options.value[i].uid = ua.randdomString(); + } + } + app = new Vue({ el: elem, data() { @@ -126,8 +133,8 @@ created() { if (this.setting.value) { this.originalValue = $.extend(true, [], this.setting.value); - this.listItem = this.setting.value; - this.value = this.setting.value; + this.listItem = $.extend(true, [], this.setting.value); + this.updateValue(this.listItem); } }, @@ -142,9 +149,6 @@ onResetItem() { this.listItem = $.extend(true, [], this.originalValue); }, - removeItem(item, index) { - this.listItem.splice(index, 1); - }, onAddItem() { var emptyItem = {}; @@ -153,6 +157,8 @@ emptyItem[this.field[i].key] = ''; } + emptyItem.uid = ua.randdomString(); + this.listItem.push(emptyItem); }, onItemChange(item, index, itemField, event) { diff --git a/public/static/plugs/ulthon-admin/ulthon-admin.js b/public/static/plugs/ulthon-admin/ulthon-admin.js index dd521eb..1fc3bb6 100644 --- a/public/static/plugs/ulthon-admin/ulthon-admin.js +++ b/public/static/plugs/ulthon-admin/ulthon-admin.js @@ -2425,6 +2425,16 @@ } else { replaceCallback(code); } + }, + randdomString(len) { + len = len || 32; + var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; + var maxPos = $chars.length; + var pwd = ''; + for (var i = 0; i < len; i++) { + pwd += $chars.charAt(Math.floor(Math.random() * maxPos)); + } + return pwd; } };