DevExpress / DevExtreme

HTML5 JavaScript Component Suite for Responsive Web Development
https://js.devexpress.com/
Other
1.81k stars 594 forks source link

Popup close when clicking on a internal select box #6394

Closed JacopoSciampi closed 5 years ago

JacopoSciampi commented 5 years ago

Steps to Reproduce:

  1. Create a popup with the attribute [closeOnOutsideClick]="true"
  2. Add a custom template with just an input type="checkbox"
  3. Click the box that change the status of that checkbox

Results You Received:

The Popup close.

Results You Expected:

The popup should not close itself since the input is inside the modal itself.

Environment Details:

Since I'm using Angular4, here's the package.json :

"dependencies": { "@angular/animations": "5.2.5", "@angular/common": "5.2.5", "@angular/compiler": "5.2.5", "@angular/core": "5.2.5", "@angular/forms": "5.2.5", "@angular/http": "5.2.5", "@angular/platform-browser": "5.2.5", "@angular/platform-browser-dynamic": "5.2.5", "@angular/router": "5.2.5", "@types/geojson": "1.0.4", "@types/proj4": "^2.3.4", "ajv": "6.1.1", "angular-in-memory-web-api": "0.5.3", "angular2-draggable": "1.4.2", "core-js": "2.5.1", "devextreme": "17.2.5", "devextreme-angular": "17.2.5", "enhanced-resolve": "3.3.0", "jszip": "3.1.4", "proj4": "^2.4.4", "reflect-metadata": "0.1.10", "rxjs": "5.5.6", "ts-helpers": "1.1.2", "wellknown": "0.5.0", "zone.js": "0.8.14" }, "devDependencies": { "@angular/cli": "1.7.0", "@angular/compiler-cli": "5.2.5", "@types/jasmine": "2.5.38", "@types/node": "6.0.89", "@types/jquery": "2.0.48", "codelyzer": "4.1.0", "jasmine-core": "2.5.2", "jasmine-spec-reporter": "2.5.0", "karma": "1.2.0", "karma-chrome-launcher": "2.2.0", "karma-cli": "1.0.1", "karma-jasmine": "1.1.0", "karma-remap-istanbul": "0.2.2", "lite-server": "2.3.0", "protractor": "4.0.14", "rimraf": "2.6.2", "ts-node": "1.2.1", "tslint": "5.9.1", "typescript": "2.4.2", "typings": "2.1.1" }

DokaRus commented 5 years ago

Hi, I've prepared a live example based on your message above and cannot reproduce the same behavior. It's not clear - whether the issue is related to the SelectBox widget (as you mentioned in the title) or to input with type checkbox (see step 2 in the Steps to Reproduce section)? I've checked it both, but it works fine for me. Could you please modify this example to help us reproduce the issue?

JacopoSciampi commented 5 years ago

It gives me, after almost five minutes loading:

ModuleNotFoundError Could not find module in path: 'devextreme/events' relative to '/node_modules/devextreme-angular/core/component.js'.

Anyway I figured out it was a front-end logic issue.

While waiting for this response, I've also noticed that declaring a viewChildas a DxPopupComponent in angular4, I cannot use almost every method that is described in the official documentation. IE: this.popup.repaint() it gives an undefined error, since repaint is not defined (even in the d.ts typo I can't find the method declaration).

DokaRus commented 5 years ago

I tried to change my example to reproduce the error, but my attempt wasn't successful. Could you prepare a demo (or modify my example) to demonstrate the issue?