[Vue warn]: не удается найти элемент
Я использую Vuejs. Это моя разметка:
<body>
<div id="main">
<div id="mainActivity" v-component="{{currentActivity}}" class="activity"></div>
</div>
</body>
Это мой код:
var main = new Vue({
el: '#main',
data: {
currentActivity: 'home'
}
})
;
когда я загружаю страницу, Я получаю это предупреждение:
[Vue warn]: Cannot find element: #main
что я делаю не так?
4 ответов:
Я думаю, что проблема в том, что ваш скрипт выполняется до того, как целевой элемент dom будет загружен в dom... одной из причин может быть то, что вы разместили свой сценарий в голове или в тег скрипт, который ставится перед элементом div
#main. Поэтому, когда скрипт выполняется он не сможет найти целевой элемент, таким образом, ошибку.одним из решений является размещение вашего скрипта в обработчике событий загрузки, например
window.onload = function () { var main = new Vue({ el: '#main', data: { currentActivity: 'home' } }); }
другой синтаксис
window.addEventListener('load', function () { //your script })
Я получаю ту же ошибку. решение состоит в том, чтобы поместить код сценария до конца тела, а не в головной части.
самое простое-поставить скрипт под документом, как раз перед вашим закрытием
</body>теги:<body> <div id="main"> <div id="mainActivity" v-component="{{currentActivity}}" class="activity"></div> </div> <script src="app.js"></script> </body>приложение.js file:
var main = new Vue({ el: '#main', data: { currentActivity: 'home' } });
Comments