Browse Source

无JIRA 添加EVENT_AFTER_HIDEVIEW 事件

research/test
dailer 1 year ago
parent
commit
6e562ece5a
  1. 12
      packages/fineui/src/widget/multiselect/multiselect.combo.js
  2. 12
      packages/fineui/src/widget/multiselect/multiselect.combo.nobar.js
  3. 16
      packages/fineui/src/widget/multiselect/multiselect.insert.combo.js
  4. 16
      packages/fineui/src/widget/multiselect/multiselect.insert.combo.nobar.js
  5. 3
      packages/fineui/typescript/widget/multiselect/multiselect.combo.ts
  6. 3
      packages/fineui/typescript/widget/multiselect/multiselect.insert.combo.ts

12
packages/fineui/src/widget/multiselect/multiselect.combo.js

@ -47,6 +47,7 @@ export class MultiSelectCombo extends Single {
static EVENT_SEARCHING = "EVENT_SEARCHING";
static EVENT_CLICK_ITEM = "EVENT_CLICK_ITEM";
static EVENT_CONFIRM = "EVENT_CONFIRM";
static MultiSelectCombo = "MultiSelectCombo";
_defaultConfig() {
return extend(super._defaultConfig(...arguments), {
@ -116,7 +117,7 @@ export class MultiSelectCombo extends Single {
self.fireEvent(MultiSelectCombo.EVENT_BLUR);
});
this.trigger.on(MultiSelectTrigger.EVENT_START, function () {
this.trigger.on(MultiSelectTrigger.EVENT_START, function() {
self._setStartValue("");
this.getSearcher().setValue(self.storeValue);
});
@ -144,7 +145,7 @@ export class MultiSelectCombo extends Single {
self.fireEvent(MultiSelectCombo.EVENT_SEARCHING);
});
this.trigger.on(MultiSelectTrigger.EVENT_CHANGE, function (value, obj) {
this.trigger.on(MultiSelectTrigger.EVENT_CHANGE, function(value, obj) {
if (obj instanceof MultiSelectBar) {
self._joinAll(this.getValue(), () => {
assertShowValue();
@ -230,7 +231,7 @@ export class MultiSelectCombo extends Single {
},
});
this.combo.on(Combo.EVENT_BEFORE_POPUPVIEW, function () {
this.combo.on(Combo.EVENT_BEFORE_POPUPVIEW, function() {
if (!this.isViewVisible()) {
self._dataChange = false; // 标记数据是否发生变化
}
@ -249,6 +250,7 @@ export class MultiSelectCombo extends Single {
} else {
self._dataChange && self.fireEvent(MultiSelectCombo.EVENT_CONFIRM);
}
this.fireEvent(MultiSelectCombo.EVENT_AFTER_HIDEVIEW);
});
triggerBtn.on(TriggerIconButton.EVENT_CHANGE, () => {
@ -274,7 +276,7 @@ export class MultiSelectCombo extends Single {
self.combo.showView();
}
});
this.numberCounter.on(MultiSelectCheckSelectedSwitcher.EVENT_BEFORE_POPUPVIEW, function () {
this.numberCounter.on(MultiSelectCheckSelectedSwitcher.EVENT_BEFORE_POPUPVIEW, function() {
this.updateSelectedValue(self.storeValue);
});
@ -331,7 +333,7 @@ export class MultiSelectCombo extends Single {
_itemsCreator4Trigger(op, callback) {
const self = this;
const o = this.options;
o.itemsCreator(op, function (res) {
o.itemsCreator(op, function(res) {
if (op.times === 1 && isNotNull(op.keywords)) {
// 预防trigger内部把当前的storeValue改掉
self.trigger.setValue(deepClone(self.getValue()));

12
packages/fineui/src/widget/multiselect/multiselect.combo.nobar.js

@ -48,6 +48,7 @@ export class MultiSelectNoBarCombo extends Single {
static EVENT_SEARCHING = "EVENT_SEARCHING";
static EVENT_CLICK_ITEM = "EVENT_CLICK_ITEM";
static EVENT_CONFIRM = "EVENT_CONFIRM";
static EVENT_AFTER_HIDEVIEW = "EVENT_AFTER_HIDEVIEW";
_defaultConfig() {
return extend(super._defaultConfig(...arguments), {
@ -117,7 +118,7 @@ export class MultiSelectNoBarCombo extends Single {
self.fireEvent(MultiSelectNoBarCombo.EVENT_BLUR);
});
this.trigger.on(MultiSelectTrigger.EVENT_START, function () {
this.trigger.on(MultiSelectTrigger.EVENT_START, function() {
self._setStartValue("");
this.getSearcher().setValue(self.storeValue);
});
@ -145,7 +146,7 @@ export class MultiSelectNoBarCombo extends Single {
}
});
this.trigger.on(MultiSelectTrigger.EVENT_CHANGE, function (value, obj) {
this.trigger.on(MultiSelectTrigger.EVENT_CHANGE, function(value, obj) {
if (obj instanceof MultiSelectBar) {
self._joinAll(this.getValue(), () => {
assertShowValue();
@ -233,7 +234,7 @@ export class MultiSelectNoBarCombo extends Single {
},
});
this.combo.on(Combo.EVENT_BEFORE_POPUPVIEW, function () {
this.combo.on(Combo.EVENT_BEFORE_POPUPVIEW, function() {
if (!this.isViewVisible()) {
self._dataChange = false; // 标记数据是否发生变化
}
@ -252,6 +253,7 @@ export class MultiSelectNoBarCombo extends Single {
} else {
self._dataChange && self.fireEvent(MultiSelectNoBarCombo.EVENT_CONFIRM);
}
this.fireEvent(MultiSelectNoBarCombo.EVENT_AFTER_HIDEVIEW);
});
triggerBtn.on(TriggerIconButton.EVENT_CHANGE, () => {
@ -280,7 +282,7 @@ export class MultiSelectNoBarCombo extends Single {
self.combo.showView();
}
});
this.numberCounter.on(MultiSelectCheckSelectedSwitcher.EVENT_BEFORE_POPUPVIEW, function () {
this.numberCounter.on(MultiSelectCheckSelectedSwitcher.EVENT_BEFORE_POPUPVIEW, function() {
this.updateSelectedValue(self.storeValue);
});
@ -360,7 +362,7 @@ export class MultiSelectNoBarCombo extends Single {
_itemsCreator4Trigger(op, callback) {
const self = this,
o = this.options;
o.itemsCreator(op, function (res) {
o.itemsCreator(op, function(res) {
if (op.times === 1 && isNotNull(op.keywords)) {
// 预防trigger内部把当前的storeValue改掉
self.trigger.setValue(deepClone(self.storeValue));

16
packages/fineui/src/widget/multiselect/multiselect.insert.combo.js

@ -50,6 +50,7 @@ export class MultiSelectInsertCombo extends Single {
static EVENT_CLICK_ITEM = "EVENT_CLICK_ITEM";
static EVENT_CONFIRM = "EVENT_CONFIRM";
static EVENT_ADD_ITEM = "EVENT_ADD_ITEM";
static EVENT_AFTER_HIDEVIEW = "EVENT_AFTER_HIDEVIEW";
_defaultConfig() {
return extend(super._defaultConfig(...arguments), {
@ -116,7 +117,7 @@ export class MultiSelectInsertCombo extends Single {
self.fireEvent(MultiSelectInsertCombo.EVENT_BLUR);
});
this.trigger.on(MultiSelectInsertTrigger.EVENT_START, function () {
this.trigger.on(MultiSelectInsertTrigger.EVENT_START, function() {
self._setStartValue("");
this.getSearcher().setValue(self.storeValue);
});
@ -124,11 +125,11 @@ export class MultiSelectInsertCombo extends Single {
self._setStartValue("");
self.fireEvent(MultiSelectInsertCombo.EVENT_STOP);
});
this.trigger.on(MultiSelectInsertTrigger.EVENT_PAUSE, function () {
this.trigger.on(MultiSelectInsertTrigger.EVENT_PAUSE, function() {
self._addItem(assertShowValue, true);
self.fireEvent(MultiSelectInsertCombo.EVENT_ADD_ITEM, this.getSearcher().getKeyword());
});
this.trigger.on(MultiSelectInsertTrigger.EVENT_SEARCHING, function (keywords) {
this.trigger.on(MultiSelectInsertTrigger.EVENT_SEARCHING, function(keywords) {
const lastKeyword = last(keywords);
keywords = initial(keywords || []);
if (keywords.length > 0) {
@ -150,7 +151,7 @@ export class MultiSelectInsertCombo extends Single {
self.fireEvent(MultiSelectInsertCombo.EVENT_SEARCHING);
});
this.trigger.on(MultiSelectInsertTrigger.EVENT_CHANGE, function (value, obj) {
this.trigger.on(MultiSelectInsertTrigger.EVENT_CHANGE, function(value, obj) {
if (obj instanceof MultiSelectBar) {
self._joinAll(this.getValue(), () => {
assertShowValue();
@ -236,7 +237,7 @@ export class MultiSelectInsertCombo extends Single {
},
});
this.combo.on(Combo.EVENT_BEFORE_POPUPVIEW, function () {
this.combo.on(Combo.EVENT_BEFORE_POPUPVIEW, function() {
if (!this.isViewVisible()) {
self._dataChange = false; // 标记数据是否发生变化
}
@ -255,6 +256,7 @@ export class MultiSelectInsertCombo extends Single {
} else {
self._dataChange && self.fireEvent(MultiSelectInsertCombo.EVENT_CONFIRM);
}
this.fireEvent(MultiSelectInsertCombo.EVENT_AFTER_HIDEVIEW);
});
triggerBtn.on(TriggerIconButton.EVENT_CHANGE, () => {
@ -280,7 +282,7 @@ export class MultiSelectInsertCombo extends Single {
self.combo.showView();
}
});
this.numberCounter.on(MultiSelectCheckSelectedSwitcher.EVENT_BEFORE_POPUPVIEW, function () {
this.numberCounter.on(MultiSelectCheckSelectedSwitcher.EVENT_BEFORE_POPUPVIEW, function() {
this.updateSelectedValue(self.storeValue);
});
@ -337,7 +339,7 @@ export class MultiSelectInsertCombo extends Single {
_itemsCreator4Trigger(op, callback) {
const self = this,
o = this.options;
o.itemsCreator(op, function (res) {
o.itemsCreator(op, function(res) {
if (op.times === 1 && isNotNull(op.keywords)) {
// 预防trigger内部把当前的storeValue改掉
self.trigger.setValue(deepClone(self.getValue()));

16
packages/fineui/src/widget/multiselect/multiselect.insert.combo.nobar.js

@ -45,6 +45,7 @@ export class MultiSelectInsertNoBarCombo extends Single {
static REQ_GET_ALL_DATA = "-1";
static EVENT_CONFIRM = "EVENT_CONFIRM";
static EVENT_ADD_ITEM = "EVENT_ADD_ITEM";
static EVENT_AFTER_HIDEVIEW = "EVENT_AFTER_HIDEVIEW";
_defaultConfig() {
return extend(super._defaultConfig(...arguments), {
@ -106,18 +107,18 @@ export class MultiSelectInsertNoBarCombo extends Single {
},
});
this.trigger.on(MultiSelectInsertTrigger.EVENT_START, function () {
this.trigger.on(MultiSelectInsertTrigger.EVENT_START, function() {
self._setStartValue("");
this.getSearcher().setValue(self.storeValue);
});
this.trigger.on(MultiSelectInsertTrigger.EVENT_STOP, () => {
self._setStartValue("");
});
this.trigger.on(MultiSelectInsertTrigger.EVENT_PAUSE, function () {
this.trigger.on(MultiSelectInsertTrigger.EVENT_PAUSE, function() {
self._addItem(assertShowValue, true);
self.fireEvent(MultiSelectInsertNoBarCombo.EVENT_ADD_ITEM, this.getSearcher().getKeyword());
});
this.trigger.on(MultiSelectInsertTrigger.EVENT_SEARCHING, function (keywords) {
this.trigger.on(MultiSelectInsertTrigger.EVENT_SEARCHING, function(keywords) {
const lastKeyword = last(keywords);
keywords = initial(keywords || []);
if (keywords.length > 0) {
@ -138,7 +139,7 @@ export class MultiSelectInsertNoBarCombo extends Single {
}
});
this.trigger.on(MultiSelectInsertTrigger.EVENT_CHANGE, function (value, obj) {
this.trigger.on(MultiSelectInsertTrigger.EVENT_CHANGE, function(value, obj) {
if (obj instanceof MultiSelectBar) {
self._joinAll(this.getValue(), () => {
assertShowValue();
@ -223,7 +224,7 @@ export class MultiSelectInsertNoBarCombo extends Single {
},
});
this.combo.on(Combo.EVENT_BEFORE_POPUPVIEW, function () {
this.combo.on(Combo.EVENT_BEFORE_POPUPVIEW, function() {
if (!this.isViewVisible()) {
self._dataChange = false; // 标记数据是否发生变化
}
@ -242,6 +243,7 @@ export class MultiSelectInsertNoBarCombo extends Single {
} else {
self._dataChange && self.fireEvent(MultiSelectInsertNoBarCombo.EVENT_CONFIRM);
}
this.fireEvent(MultiSelectInsertNoBarCombo.EVENT_AFTER_HIDEVIEW);
});
triggerBtn.on(TriggerIconButton.EVENT_CHANGE, () => {
@ -270,7 +272,7 @@ export class MultiSelectInsertNoBarCombo extends Single {
self.combo.showView();
}
});
this.numberCounter.on(MultiSelectCheckSelectedSwitcher.EVENT_BEFORE_POPUPVIEW, function () {
this.numberCounter.on(MultiSelectCheckSelectedSwitcher.EVENT_BEFORE_POPUPVIEW, function() {
this.updateSelectedValue(self.storeValue);
});
@ -327,7 +329,7 @@ export class MultiSelectInsertNoBarCombo extends Single {
_itemsCreator4Trigger(op, callback) {
const self = this,
o = this.options;
o.itemsCreator(op, function (res) {
o.itemsCreator(op, function(res) {
if (op.times === 1 && isNotNull(op.keywords)) {
// 预防trigger内部把当前的storeValue改掉
self.trigger.setValue(deepClone(self.storeValue));

3
packages/fineui/typescript/widget/multiselect/multiselect.combo.ts

@ -10,6 +10,7 @@ export declare class MultiSelectCombo extends Single {
static EVENT_CONFIRM: string;
static REQ_GET_DATA_LENGTH: 1;
static REQ_GET_ALL_DATA: -1;
static EVENT_AFTER_HIDEVIEW: string;
props: {
itemsCreator: (options: any, callback: () => any[]) => void;
@ -17,7 +18,7 @@ export declare class MultiSelectCombo extends Single {
text: string;
valueFormatter: (v: string) => string;
allowEdit: boolean;
} & Single['props']
} & Single["props"];
_itemsCreator4Trigger(op: any, callback: Function): void;

3
packages/fineui/typescript/widget/multiselect/multiselect.insert.combo.ts

@ -11,6 +11,7 @@ export declare class MultiSelectInsertCombo extends Single {
static EVENT_ADD_ITEM: string;
static REQ_GET_DATA_LENGTH: 1;
static REQ_GET_ALL_DATA: -1;
static EVENT_AFTER_HIDEVIEW: string;
props: {
itemsCreator?: Function;
@ -20,7 +21,7 @@ export declare class MultiSelectInsertCombo extends Single {
text?: string;
watermark?: string;
container?: any;
} & Single['props'];
} & Single["props"];
_itemsCreator4Trigger(op: any, callback: Function): void;

Loading…
Cancel
Save