{"action":"created","issue":{"url":"https://api.github.com/repos/azu/JavaScript-Plugin-Architecture/issues/58","labels_url":"https://api.github.com/repos/azu/JavaScript-Plugin-Architecture/issues/58/labels{/name}","comments_url":"https://api.github.com/repos/azu/JavaScript-Plugin-Architecture/issues/58/comments","events_url":"https://api.github.com/repos/azu/JavaScript-Plugin-Architecture/issues/58/events","html_url":"https://github.com/azu/JavaScript-Plugin-Architecture/issues/58","id":106218847,"number":58,"title":"Redux","user":{"login":"azu","id":19714,"avatar_url":"https://avatars.githubusercontent.com/u/19714?v=3","gravatar_id":"","url":"https://api.github.com/users/azu","html_url":"https://github.com/azu","followers_url":"https://api.github.com/users/azu/followers","following_url":"https://api.github.com/users/azu/following{/other_user}","gists_url":"https://api.github.com/users/azu/gists{/gist_id}","starred_url":"https://api.github.com/users/azu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azu/subscriptions","organizations_url":"https://api.github.com/users/azu/orgs","repos_url":"https://api.github.com/users/azu/repos","events_url":"https://api.github.com/users/azu/events{/privacy}","received_events_url":"https://api.github.com/users/azu/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/azu/JavaScript-Plugin-Architecture/labels/help%20wanted","name":"help wanted","color":"159818"},{"url":"https://api.github.com/repos/azu/JavaScript-Plugin-Architecture/labels/proposal","name":"proposal","color":"eb6420"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-09-13T14:03:14Z","updated_at":"2015-09-14T07:49:17Z","closed_at":null,"body":"# Reduxのアーキテクチャ\r\nURL: https://github.com/rackt/redux\r\n\r\n## どう書ける?\r\n\r\n```js\r\nimport { createStore, combineReducers, applyMiddleware } from 'redux';\r\n\r\n// applyMiddleware takes createStore() and returns\r\n// a function with a compatible API.\r\nlet createStoreWithMiddleware = applyMiddleware(logger, crashReporter)(createStore);\r\n\r\n// Use it like you would use createStore()\r\nlet todoApp = combineReducers(reducers);\r\nlet store = createStoreWithMiddleware(todoApp);\r\n```\r\n\r\n## どういう仕組み?\r\n\r\n- 高階関数をapplyしている\r\n- http://rackt.github.io/redux/docs/advanced/Middleware.html\r\n- TBA\r\n\r\n## どういう事に向いてる?\r\n\r\n- TBA\r\n\r\n## どういう事に向いていない?\r\n\r\n- TBA\r\n\r\n## この仕組みを使ってるもの\r\n\r\n- TBA\r\n- 仕組み的にはConnectと似ているが高階関数である\r\n"},"comment":{"url":"https://api.github.com/repos/azu/JavaScript-Plugin-Architecture/issues/comments/139987119","html_url":"https://github.com/azu/JavaScript-Plugin-Architecture/issues/58#issuecomment-139987119","issue_url":"https://api.github.com/repos/azu/JavaScript-Plugin-Architecture/issues/58","id":139987119,"user":{"login":"azu","id":19714,"avatar_url":"https://avatars.githubusercontent.com/u/19714?v=3","gravatar_id":"","url":"https://api.github.com/users/azu","html_url":"https://github.com/azu","followers_url":"https://api.github.com/users/azu/followers","following_url":"https://api.github.com/users/azu/following{/other_user}","gists_url":"https://api.github.com/users/azu/gists{/gist_id}","starred_url":"https://api.github.com/users/azu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/azu/subscriptions","organizations_url":"https://api.github.com/users/azu/orgs","repos_url":"https://api.github.com/users/azu/repos","events_url":"https://api.github.com/users/azu/events{/privacy}","received_events_url":"https://api.github.com/users/azu/received_events","type":"User","site_admin":false},"created_at":"2015-09-14T07:49:17Z","updated_at":"2015-09-14T07:49:17Z","body":"[Understanding Redux Middleware — Medium](https://medium.com/@meagle/understanding-87566abcfb7a \"Understanding Redux Middleware — Medium\")"}}