<p dir="auto">I was thrown off by this behavior, figured it warranted an issue.</p>
<div class="highlight highlight-source-js notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="function Component() {
  return &lt;div/&gt;;
}

var result = ReactDOM.render(&lt;Component/&gt;, el);

result === null;"><pre class="notranslate"><span class="pl-k">function</span> <span class="pl-v">Component</span><span class="pl-kos">(</span><span class="pl-kos">)</span> <span class="pl-kos">{</span>
  <span class="pl-k">return</span> <span class="pl-c1">&lt;</span><span class="pl-ent">div</span><span class="pl-c1">/</span><span class="pl-c1">&gt;</span><span class="pl-kos">;</span>
<span class="pl-kos">}</span>

<span class="pl-k">var</span> <span class="pl-s1">result</span> <span class="pl-c1">=</span> <span class="pl-v">ReactDOM</span><span class="pl-kos">.</span><span class="pl-en">render</span><span class="pl-kos">(</span><span class="pl-c1">&lt;</span><span class="pl-ent">Component</span><span class="pl-c1">/</span><span class="pl-c1">&gt;</span><span class="pl-kos">,</span> <span class="pl-s1">el</span><span class="pl-kos">)</span><span class="pl-kos">;</span>

<span class="pl-s1">result</span> <span class="pl-c1">===</span> <span class="pl-c1">null</span><span class="pl-kos">;</span></pre></div>
<p dir="auto">I was attempting to <code class="notranslate">ReactDOM.findDOMNode</code> the result of <code class="notranslate">ReactDOM.render</code>.</p>
<p dir="auto">I realize to some extent this is an intended behavior? Stateless components having no public instance, but I couldn't find much in way of conversation around why this behavior was chosen.</p>
<p dir="auto">As of right now there is no good way for a parent component to even know if a ref is going to work on a component. What is the rational behind not allowing DOM access to a stateless component? It seems like if there is no instance to expose, the proper behavior would be to return the DOM node (or whatever the underlying thing is) directly like DOM components do now.</p>
<p dir="auto">The current behavior is surprising and seems inverted. A component is never going to reasonably be able to know if a parent needs access to its DOM node. And a Parent has no way of knowing which components are stateless (and why should it?) to know to wrap it. Right now we need to wait until something silently doesn't work. At the very least a stateless component with a ref should throw, though that would be a last resort concession in my mind.</p>