首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >[Vue warn]:无法找到元素

[Vue warn]:无法找到元素
EN

Stack Overflow用户
提问于 2015-04-07 13:30:49
回答 5查看 146.6K关注 0票数 191

我使用的是Vuejs。这是我的标记:

代码语言:javascript
复制
<body>
  <div id="main">
    <div id="mainActivity" v-component="{{currentActivity}}" class="activity"></div>
  </div>
</body>

这是我的代码:

代码语言:javascript
复制
var main = new Vue({
    el: '#main',
    data: {
        currentActivity: 'home'
    }
})
;

当我加载页面时,我得到这样的警告:

代码语言:javascript
复制
[Vue warn]: Cannot find element: #main

我做错了什么?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2015-04-07 13:45:29

我认为问题在于你的脚本是在目标dom元素加载到dom之前执行的……其中一个原因可能是您将脚本放在了页面的头部,或者放在了#main元素之前的脚本标记中。因此,当执行脚本时,它将无法找到目标元素,因此会出现错误。

一种解决方案是将脚本放在加载事件处理程序中,如下所示

代码语言:javascript
复制
window.onload = function () {
    var main = new Vue({
        el: '#main',
        data: {
            currentActivity: 'home'
        }
    });
}

另一种语法

代码语言:javascript
复制
window.addEventListener('load', function () {
    //your script
})
票数 359
EN

Stack Overflow用户

发布于 2017-08-20 18:06:03

我已经通过向'script‘元素添加'defer’属性解决了这个问题。

票数 82
EN

Stack Overflow用户

发布于 2016-11-15 00:44:32

我得到了同样的错误。解决方案是将脚本代码放在body的末尾,而不是head部分。

票数 59
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29484431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档