Vue template or render function not defined yet I am using neither? : <p>This is my main javascript file:</p>

<pre><code>import Vue from 'vue'

new Vue({
  el: '#app'
});
</code></pre>

<p>My HTML file:</p>

<pre><code>&lt;body&gt;
    &lt;div id="app"&gt;&lt;/div&gt;

    &lt;script src="{{ mix('/js/app.js') }}"&gt;&lt;/script&gt;
&lt;/body&gt;
</code></pre>

<p>Webpack configuration of Vue.js with the runtime build:</p>

<pre><code>alias: {
    'vue$': 'vue/dist/vue.runtime.common.js'
}
</code></pre>

<p>I am still getting this well known error:</p>

<blockquote>
  <p>[Vue warn]: Failed to mount component: template or render function not defined. 
  (found in root instance)</p>
</blockquote>

<p>How come when I don't even have a single thing inside my #app div where I mount Vue, I am still getting a render/template error? It says <code>found in root</code> but there is nothing to be found because it does not even have any content?</p>

<p>How am I suppose to mount if this does not work?</p>

<p><strong>Edit:</strong></p>

<p>I have tried it like this which seems to work:</p>

<pre><code>new Vue(App).$mount('#app');
</code></pre>

<p>It make sense because using the <code>el</code> property implies you are 'scanning' that dom element for any components and it's useless because the runtime build does not have a compiler. </p>

<p>Still it is an extremely strange error message to throw, especially when I have my entire #app div emptied out.</p>

<p>Hopefully somebody could confirm my thoughts.</p>
