{"action":"opened","issue":{"url":"https://api.github.com/repos/angular/material/issues/9373","repository_url":"https://api.github.com/repos/angular/material","labels_url":"https://api.github.com/repos/angular/material/issues/9373/labels{/name}","comments_url":"https://api.github.com/repos/angular/material/issues/9373/comments","events_url":"https://api.github.com/repos/angular/material/issues/9373/events","html_url":"https://github.com/angular/material/issues/9373","id":172473093,"number":9373,"title":"md-select: empty value selection sets to string?","user":{"login":"epelc","id":5204642,"avatar_url":"https://avatars.githubusercontent.com/u/5204642?v=3","gravatar_id":"","url":"https://api.github.com/users/epelc","html_url":"https://github.com/epelc","followers_url":"https://api.github.com/users/epelc/followers","following_url":"https://api.github.com/users/epelc/following{/other_user}","gists_url":"https://api.github.com/users/epelc/gists{/gist_id}","starred_url":"https://api.github.com/users/epelc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/epelc/subscriptions","organizations_url":"https://api.github.com/users/epelc/orgs","repos_url":"https://api.github.com/users/epelc/repos","events_url":"https://api.github.com/users/epelc/events{/privacy}","received_events_url":"https://api.github.com/users/epelc/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-08-22T14:52:08Z","updated_at":"2016-08-22T14:52:08Z","closed_at":null,"body":"**Actual Behavior**:\r\n -  `What is the issue? *`  \r\nIn the 1.1.0 change log it notes you should change `value=\"\"` to one of the following for an empty/default option. But if you use one of the first two it sets the value to literall strings(`\"null\"` or `\"undefined\"`) which breaks any `ng-if`s or other logic if you click on the empty option.\r\n\r\n```\r\n<md-option value=\"null\">All options</md-option>\r\n<md-option value=\"undefined\">All options</md-option>\r\n<md-option ng-value=\"''\">All options</md-option>\r\n```\r\n\r\n\r\n -  `What is the expected behavior?`  \r\nNot sure if it should know `value=\"null\"` means the js `null` and not `\"null\"` or if you just have to use `ng-value=\"null\"`(or `undefined` or `''`). If it is the second, is there anyway to do this without an extra watcher? Or does `ng-value=\"null\"` not create a watcher?\r\n\r\n**CodePen** (or steps to reproduce the issue): *\r\n -  `CodePen Demo which shows your issue:` http://codepen.io/anon/pen/pbmRyL\r\n -  `Details:`\r\nClick the first option which defaults to being selected. Note the binding changes to a string literal `\"undefined\"`. This also happens when you use `value=\"null\"`\r\n\r\n**Angular Versions**: *\r\n -  `Angular Version:` 1.5.8\r\n -  `Angular Material Version:` 1.1.0\r\n\r\n**Additional Information**:\r\n -  `Browser Type: *` chrome\r\n -  `Browser Version: *` 52\r\n -  `OS: *` os x 10.11.6\r\n -  `Stack Traces:`\r\n\r\n----\r\nShortcut to create a [new CodePen Demo](http://codepen.io/team/AngularMaterial/pen/bEGJdd).\r\nNote: `*` indicates required information. Without this information, your issue may be auto-closed.\r\n\r\n> Do not modify the titles or questions. Simply add your responses to the ends of the questions.\r\n  Add more lines if needed."}}
{"actor":{"display_login":"epelc"}}