<h3 dir="auto">Version</h3>
<p dir="auto">2.6.11</p>
<h3 dir="auto">Reproduction link</h3>
<p dir="auto"><a href="https://codepen.io/PatriciusSanctus/pen/PowdQpq" rel="nofollow">https://codepen.io/PatriciusSanctus/pen/PowdQpq</a></p>
<h3 dir="auto">Steps to reproduce</h3>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="Vue.component('func-parent', {
  functional: true,
  provide: () =&gt; ({ foo: 'bar' }) // || { foo: 'bar' }
})
Vue.component('func-child', {
  functional: true,
  inject: ['foo']
})"><pre class="notranslate"><code class="notranslate">Vue.component('func-parent', {
  functional: true,
  provide: () =&gt; ({ foo: 'bar' }) // || { foo: 'bar' }
})
Vue.component('func-child', {
  functional: true,
  inject: ['foo']
})
</code></pre></div>
<h3 dir="auto">What is expected?</h3>
<p dir="auto">i want use injection in render() function</p>
<h3 dir="auto">What is actually happening?</h3>
<p dir="auto">[Vue warn]: Injection "foo" not found</p>
<hr>
<p dir="auto">without DOM i can't send parent`s props to child for control child behavior (simple example: "grid-row -&gt; grid-col")</p>
<h3 dir="auto">What problem does this feature solve?</h3>
<ul dir="auto">
<li>being buffered by linting- / validation-tools about the invalid html</li>
<li>risking conflicts with future html / svg / MathML-specs</li>
</ul>
<h3 dir="auto">What does the proposed API look like?</h3>
<h1 dir="auto">short version</h1>
<p dir="auto">Instead of <code class="notranslate">&lt;… v-bind= …&gt;</code> use <code class="notranslate">&lt;… data-v-bind= …&gt;</code></p>
<h1 dir="auto">long version</h1>
<p dir="auto">I think I can add to the discussion on <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="33715058" data-permission-text="Title is private" data-url="https://github.com/vuejs/vue/issues/273" data-hovercard-type="issue" data-hovercard-url="/vuejs/vue/issues/273/hovercard" href="https://github.com/vuejs/vue/issues/273">#273</a> but unfortunately I am not allowed to, so I opened this duplicate.</p>
<p dir="auto"><strong>Why it buffers me much:</strong></p>
<ul dir="auto">
<li>Any html-validator I know – Node.js, browser-plugin, IDE – thinks it is invalid and will tell me so.</li>
</ul>
<p dir="auto"><strong>Why it buffers me minor:</strong></p>
<ul dir="auto">
<li>The specs gave us the <em>data-</em> for custom attributes so we can be sure not to conflict with native attributes in future specs. Since native attributes will be intepreted as is in source-code I think that JS will remove the invalid attributes is not a fitting argument.</li>
<li>custom attributes with <em>data</em> also have there own JavaScript API. I like how it differs the code from native attributes structurally and visually.</li>
</ul>
<p dir="auto"><strong>Why I think it's great</strong></p>
<ul dir="auto">
<li>I think <em>data-</em> might be more bloated but that is a problem with the specs.</li>
</ul>