{"action":"closed","issue":{"url":"https://api.github.com/repos/vuejs/vue/issues/2436","repository_url":"https://api.github.com/repos/vuejs/vue","labels_url":"https://api.github.com/repos/vuejs/vue/issues/2436/labels{/name}","comments_url":"https://api.github.com/repos/vuejs/vue/issues/2436/comments","events_url":"https://api.github.com/repos/vuejs/vue/issues/2436/events","html_url":"https://github.com/vuejs/vue/issues/2436","id":139704108,"number":2436,"title":"Can't pass a function with args to a child as a prop","user":{"login":"TheDutchCoder","id":1668207,"avatar_url":"https://avatars.githubusercontent.com/u/1668207?v=3","gravatar_id":"","url":"https://api.github.com/users/TheDutchCoder","html_url":"https://github.com/TheDutchCoder","followers_url":"https://api.github.com/users/TheDutchCoder/followers","following_url":"https://api.github.com/users/TheDutchCoder/following{/other_user}","gists_url":"https://api.github.com/users/TheDutchCoder/gists{/gist_id}","starred_url":"https://api.github.com/users/TheDutchCoder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TheDutchCoder/subscriptions","organizations_url":"https://api.github.com/users/TheDutchCoder/orgs","repos_url":"https://api.github.com/users/TheDutchCoder/repos","events_url":"https://api.github.com/users/TheDutchCoder/events{/privacy}","received_events_url":"https://api.github.com/users/TheDutchCoder/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2016-03-09T21:22:25Z","updated_at":"2016-03-09T21:37:13Z","closed_at":"2016-03-09T21:37:13Z","body":"### Vue.js version\r\n1.0.16\r\n\r\n### Steps to reproduce\r\nLoop over a div with a v-for to render a nested component:\r\n```\r\n<div v-for=\"item in items\">\r\n  <component :data=\"item.data\" :on-select=\"someMethod(arg1, arg2)\"></component>\r\n</div>\r\n```\r\n\r\nThe issue is that v-ref can't be used, because the v-for loop is not on the component (for lay-out reasons)\r\n\r\n### What is Expected?\r\n`someMethod(arg1, arg2)` should be passed down to the child, so it can be used as a callback whenever `onSelect` is handled in the child.\r\n\r\n### What is actually happening?\r\n`someMethod(arg1, arg2)` is not passed to the child, instead it's evaluated on runtime.\r\nThere's also no way to pass the function down with arguments without executing it on runtime.\r\n\r\nI might be out of my depth here, but I have no clue how to solve this issue. In React I can pass down an anonymous function like so: `:on-select=\"(foo) => { this.doSomething(foo) }\"`, which is great because it makes my components more agnostic.\r\n\r\nWith that anonymous function stuff gets bound to `scope`, not sure how that works."}}