{"action":"created","issue":{"url":"https://api.github.com/repos/j1wu/i-learned-something-new-today/issues/97","repository_url":"https://api.github.com/repos/j1wu/i-learned-something-new-today","labels_url":"https://api.github.com/repos/j1wu/i-learned-something-new-today/issues/97/labels{/name}","comments_url":"https://api.github.com/repos/j1wu/i-learned-something-new-today/issues/97/comments","events_url":"https://api.github.com/repos/j1wu/i-learned-something-new-today/issues/97/events","html_url":"https://github.com/j1wu/i-learned-something-new-today/issues/97","id":166119967,"number":97,"title":"Architecture of Angular 2 apps","user":{"login":"j1wu","id":5327840,"avatar_url":"https://avatars.githubusercontent.com/u/5327840?v=3","gravatar_id":"","url":"https://api.github.com/users/j1wu","html_url":"https://github.com/j1wu","followers_url":"https://api.github.com/users/j1wu/followers","following_url":"https://api.github.com/users/j1wu/following{/other_user}","gists_url":"https://api.github.com/users/j1wu/gists{/gist_id}","starred_url":"https://api.github.com/users/j1wu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/j1wu/subscriptions","organizations_url":"https://api.github.com/users/j1wu/orgs","repos_url":"https://api.github.com/users/j1wu/repos","events_url":"https://api.github.com/users/j1wu/events{/privacy}","received_events_url":"https://api.github.com/users/j1wu/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/j1wu/i-learned-something-new-today/labels/angular","name":"angular","color":"b60205"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-07-18T15:22:13Z","updated_at":"2016-10-20T14:56:16Z","closed_at":null,"body":"### Components\r\n- component = view component.\r\n- encapsulates the template, data and the behaviour of a view.\r\n- decouple from the DOM.\r\n\r\n```typescript\r\nexport class RatingComponent {\r\n  averageRating: number;\r\n  setRating(value) {}\r\n}\r\n```\r\n\r\n### Directives\r\n- to modify DOM elements and / or extend their behaviour.\r\n- does not have template or html markup for the view.\r\n- often used to add behaviour to existing DOM element.\r\n\r\n```html\r\n<input type=\"text\" autoGrow />\r\n```\r\n\r\n### Routers\r\n- purely responsible for navigation.\r\n\r\n### Services\r\n- encapsulates any logic that is not related to view."},"comment":{"url":"https://api.github.com/repos/j1wu/i-learned-something-new-today/issues/comments/255130378","html_url":"https://github.com/j1wu/i-learned-something-new-today/issues/97#issuecomment-255130378","issue_url":"https://api.github.com/repos/j1wu/i-learned-something-new-today/issues/97","id":255130378,"user":{"login":"i042416","id":5669954,"avatar_url":"https://avatars.githubusercontent.com/u/5669954?v=3","gravatar_id":"","url":"https://api.github.com/users/i042416","html_url":"https://github.com/i042416","followers_url":"https://api.github.com/users/i042416/followers","following_url":"https://api.github.com/users/i042416/following{/other_user}","gists_url":"https://api.github.com/users/i042416/gists{/gist_id}","starred_url":"https://api.github.com/users/i042416/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/i042416/subscriptions","organizations_url":"https://api.github.com/users/i042416/orgs","repos_url":"https://api.github.com/users/i042416/repos","events_url":"https://api.github.com/users/i042416/events{/privacy}","received_events_url":"https://api.github.com/users/i042416/received_events","type":"User","site_admin":false},"created_at":"2016-10-20T14:56:16Z","updated_at":"2016-10-20T14:56:16Z","body":"mark"}}
{"actor":{"display_login":"i042416"}}