{"action":"created","issue":{"url":"https://api.github.com/repos/angular/angular/issues/23314","repository_url":"https://api.github.com/repos/angular/angular","labels_url":"https://api.github.com/repos/angular/angular/issues/23314/labels{/name}","comments_url":"https://api.github.com/repos/angular/angular/issues/23314/comments","events_url":"https://api.github.com/repos/angular/angular/issues/23314/events","html_url":"https://github.com/angular/angular/issues/23314","id":313327768,"number":23314,"title":"Get error \"Expression has changed after it was checked\" when I use pristine flag","user":{"login":"dxvladislavvolkov","id":20125410,"avatar_url":"https://avatars1.githubusercontent.com/u/20125410?v=4","gravatar_id":"","url":"https://api.github.com/users/dxvladislavvolkov","html_url":"https://github.com/dxvladislavvolkov","followers_url":"https://api.github.com/users/dxvladislavvolkov/followers","following_url":"https://api.github.com/users/dxvladislavvolkov/following{/other_user}","gists_url":"https://api.github.com/users/dxvladislavvolkov/gists{/gist_id}","starred_url":"https://api.github.com/users/dxvladislavvolkov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dxvladislavvolkov/subscriptions","organizations_url":"https://api.github.com/users/dxvladislavvolkov/orgs","repos_url":"https://api.github.com/users/dxvladislavvolkov/repos","events_url":"https://api.github.com/users/dxvladislavvolkov/events{/privacy}","received_events_url":"https://api.github.com/users/dxvladislavvolkov/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":10,"created_at":"2018-04-11T13:37:29Z","updated_at":"2018-04-11T21:09:36Z","closed_at":null,"author_association":"NONE","body":"<!--\r\nPLEASE HELP US PROCESS GITHUB ISSUES FASTER BY PROVIDING THE FOLLOWING INFORMATION.\r\n\r\nISSUES MISSING IMPORTANT INFORMATION MAY BE CLOSED WITHOUT INVESTIGATION.\r\n-->\r\n\r\n## I'm submitting a...\r\n<!-- Check one of the following options with \"x\" -->\r\n<pre><code>\r\n[ ] Regression (a behavior that used to work and stopped working in a new release)\r\n[x] Bug report  <!-- Please search GitHub for a similar issue or PR before submitting -->\r\n[ ] Feature request\r\n[ ] Documentation issue or request\r\n[ ] Support request => Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question\r\n</code></pre>\r\n\r\n## Current behavior\r\n<!-- Describe how the issue manifests. -->\r\nI have a component with two options. For one I use ngModel directive and for the other option I, use binding with control pristine. When I change the value of an option I get error \"ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'someInput: true'.\"\r\n\r\nA value I expose asynchronously.\r\nPerhaps this is due to the implementation of the ControlValueAccessor  interface\r\n\r\n## Expected behavior\r\n<!-- Describe what the desired behavior would be. -->\r\nChanging the value must be done without error\r\n\r\n## Minimal reproduction of the problem with instructions\r\n<!--\r\nFor bug reports please provide the *STEPS TO REPRODUCE* and if possible a *MINIMAL DEMO* of the problem via\r\nhttps://stackblitz.com or similar (you can use this template as a starting point: https://stackblitz.com/fork/angular-gitter).\r\n-->\r\n\r\nYou can see [an example](https://stackblitz.com/edit/angular-b9hhcn). (open console)\r\n\r\n## What is the motivation / use case for changing the behavior?\r\n<!-- Describe the motivation or the concrete use case. -->\r\n\r\n\r\n## Environment\r\n\r\n<pre><code>\r\nAngular version: 5.2.9\r\n<!-- Check whether this is still an issue in the most recent Angular version -->\r\n\r\nBrowser:\r\n- [ ] Chrome (desktop) version XX\r\n- [ ] Chrome (Android) version XX\r\n- [ ] Chrome (iOS) version XX\r\n- [ ] Firefox version XX\r\n- [ ] Safari (desktop) version XX\r\n- [ ] Safari (iOS) version XX\r\n- [ ] IE version XX\r\n- [ ] Edge version XX\r\n \r\nFor Tooling issues:\r\n- Node version: XX  <!-- run `node --version` -->\r\n- Platform:  <!-- Mac, Linux, Windows -->\r\n\r\nOthers:\r\n<!-- Anything else relevant?  Operating system version, IDE, package manager, HTTP server, ... -->\r\n</code></pre>\r\n"},"comment":{"url":"https://api.github.com/repos/angular/angular/issues/comments/380596583","html_url":"https://github.com/angular/angular/issues/23314#issuecomment-380596583","issue_url":"https://api.github.com/repos/angular/angular/issues/23314","id":380596583,"user":{"login":"mlc-mlapis","id":5693835,"avatar_url":"https://avatars3.githubusercontent.com/u/5693835?v=4","gravatar_id":"","url":"https://api.github.com/users/mlc-mlapis","html_url":"https://github.com/mlc-mlapis","followers_url":"https://api.github.com/users/mlc-mlapis/followers","following_url":"https://api.github.com/users/mlc-mlapis/following{/other_user}","gists_url":"https://api.github.com/users/mlc-mlapis/gists{/gist_id}","starred_url":"https://api.github.com/users/mlc-mlapis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mlc-mlapis/subscriptions","organizations_url":"https://api.github.com/users/mlc-mlapis/orgs","repos_url":"https://api.github.com/users/mlc-mlapis/repos","events_url":"https://api.github.com/users/mlc-mlapis/events{/privacy}","received_events_url":"https://api.github.com/users/mlc-mlapis/received_events","type":"User","site_admin":false},"created_at":"2018-04-11T21:09:36Z","updated_at":"2018-04-11T21:09:36Z","author_association":"NONE","body":"@dxvladislavvolkov ... hmm, so start again and now with just a correct code ... the best with reactive principle. You will see that this way solve a lot of problems with violating the one-way data flow.\r\n\r\n**Notice:**\r\nIf you have an unclear case when you need to find out what is exactly the place with stands behind `ExpressionChangedAfterItHasBeenCheckedError` message ... use https://ng-run.com\r\nhttps://medium.com/@a.yurich.zuev/catch-angular-template-errors-like-a-pro-or-how-i-create-angular-demo-e98694977911\r\n\r\nAnd read carefully these posts:\r\n* https://blog.angularindepth.com/everything-you-need-to-know-about-change-detection-in-angular-8006c51d206f"}}
{"actor":{"display_login":"mlc-mlapis"}}