[Vue warn]: Cannot find element: #app

1、webpack + vue

  项目结构:

  

  index.html

<!DOCTYPE html>
<html>
<head>
    <title>标题</title>
    <meta charset="utf-8">
    <script type="text/javascript" src="../dist/bundle.js"></script>
</head>
<body>
    <h3 class="blue">h3标签内的文本</h3>
    <ul>
        <li>这是一个li标签</li>
        <li>这是一个li标签</li>
        <li>这是一个li标签</li>
        <li>这是一个li标签</li>
        <li>这是一个li标签</li>
    </ul>

    <div class="img"></div>

    <div id="app">
        <h3> {{ msg }} </h3>
    </div>
</body>
</html>

  common.css

.blue {
    background-color: blue;
}
div.img {
    width: 200px;
    height: 200px;
    background: url(‘../images/a.jpg‘);
    background-size: cover;
}

  main.js

// 这是项目的入口js文件

// 导入jquery
//这是ES6中导入模块的语法
import $ from ‘jquery‘;

import ‘./css/common.css‘;

// 注意:在webpack中,使用下面这句导入vue,功能不完整,只提供runtime-only的方式,并没没有提供向网页中那样的使用方式
//import Vue from ‘vue‘;
// 导入完整的vue
import Vue from ‘../node_modules/vue/dist/vue.js‘;

$(function() {
    $(‘li:odd‘).css(‘backgroundColor‘,‘yellow‘);
    $(‘li:even‘).css(‘backgroundColor‘,‘#eee‘);
});

var vm = new Vue({
    el: ‘#app‘,
    data: {
        msg: ‘hello vue‘
    }
});

   webpack.config.js

var path = require(‘path‘);

// 通过node的模块操作,向外暴露一个配置对象
module.exports = {
    entry: path.join(__dirname, ‘./src/main.js‘), // 入口,表示要使用webpack打包哪个文件
    output: {   // 出口
        path: path.join(__dirname, ‘./dist‘),
        filename: ‘bundle.js‘
    },
    module: {  //用于配置所有第三方模块加载器
        rules: [  //所有第三方模块的匹配规则
            {
                test:/\.css$/,
                use: [‘style-loader‘,‘css-loader‘]
            },
            {
                test:/\.(jpg|png|gif|bmp|jpeg)$/,
                use: [‘url-loader‘]
                // limit单位byte,如果图片大于等于limit给定值,则不会被转为base64格式字符串
                // name=[name].[ext]:打包的图片原名相同
                // use: [‘url-loader?limit=1000&name=[name].[ext]‘]
            }
        ]
    }
};

  执行webpack命令,报错:[Vue warn]: Cannot find element: #app

  原因:index.html中导入bundle.js在<div id="app">之前,在元素渲染前是获取不到的。

  <script type="text/javascript" src="../dist/bundle.js"></script>要在最后导入。

  

原文地址:https://www.cnblogs.com/xy-ouyang/p/11247324.html

时间: 2024-10-09 07:06:31

[Vue warn]: Cannot find element: #app的相关文章

[vue遇错记录] vue.js:569 [Vue warn]: Cannot find element: #app

写了一个很简单的界面,console提示:vue.js:569 [Vue warn]: Cannot find element: #vue-app.找了半天才发现原因: <script src="../vue.js"></script> <div id="app"> {{ message }} </div> <script src="app.js"></script> <

[Vue warn]: Cannot find element: #main

使用vue框架的时候,如果页面提示如下错误,则说明new Vue的时候没有传入 el 的值: [Vue warn]: Cannot find element: #main 我们传入el 既可以,如: var main = new Vue({ el: '#main', data: { currentActivity: 'home' } }):

Vue Element遇警告:[Vue warn]: Invalid prop: custom validator check failed for prop &quot;type&quot;.

更详细的信息如下: [Vue warn]: Invalid prop: custom validator check failed for prop "type". found in ---> <ElBadge> at packages/badge/src/main.vue <ElMenuItem> at packages/menu/src/menu-item.vue <ElMenu> at packages/menu/src/menu.vue

vue报错:[Vue warn]: Attribute &quot;id&quot; is ignored on component &lt;div&gt; because the component is a fragment instance

[Vue warn]: Attribute "id" is ignored on component <div> because the component is a fragment instance 今天自己做一个vue小项目的时候,老是报这个错误,百度之后解释是只能有一个最顶级的父元素,但是我最外层只用了一个div 出现fragment instance有多种情况: Template contains multiple top-level elements. (模版包

在Vue框架中引入Element

文章会讲到如何在Vue框架中引入Element 那我们先来说一下Vue框架:Vue是渐进式,JavaScript框架.很多人不理解什么是渐进式,简单点讲就是易用.灵活.高效(没有太多限制) 这里介绍npm安装方式: 打开cmd,找到你Vue项目的路径 运行 npm i element-ui -S 然后在main.js里写入以下内容: import Vue from 'vue'; import ElementUI from 'element-ui'; import 'element-ui/lib/

[Vue warn]: Attribute &quot;id&quot; is ignored on component &lt;div&gt; because the component is a fragment instanc

今天在使用vue框架搭建环境时,遇到这个错误提示: [Vue warn]: Attribute "id" is ignored on component <div> because the component is a fragment instanc 这个提示的原因是使用 vue-router 和 vue-loader 插件的时候在最外面那个 template 里面,所有内容的外面没有使用一个div包起来. 如果没有使用div或者其他的元素包起来,vue-router 跳

[Vue warn]: Error in render: &quot;SyntaxError: Unexpected token &#39; in JSON at position 1&quot;

一,场景: 字符串转对象: var str = "{'bankRate':5,'YINGUO':0}" 二,操作: JSON.parse(str)时候,报错 [Vue warn]: Error in render: "SyntaxError: Unexpected token ' in JSON at position 1" 三,原因: 使用parse这个方法,要求很严格,必须是json的k和value都用双引号包起来: ex:"{"bankRa

vue2.XX 提示[Vue warn]: Error in render: &quot;TypeError: Cannot read property &#39;img&#39; of undefined&quot;

item 是向后台请求的一条数据,里面包含img,但是却提示img未定义 父组件向子组件传递数据时, 子组件 具体代码: <img :src="item.img" /> 提示: 出现的原因: 可能是页面渲染和请求数据是异步操作, 数据还未请求结束,页面已经开始渲染了,所以刚开始报未定义变量, 等数据获取结束后,再次渲染,页面内容出来了,但是刚开始的警告也出来了 解决办法: 1. <img :src="item && item.imgUrl&q

[Vue warn]: Duplicate keys detected: &#39;area&#39;. This may cause an update error.

运行vue程序,浏览器报错: 原因:检测到重复的密钥:'area',因为在使用v-for循环绑定的时候,key的值是唯一的,不能相同,否则会出现意想不到的bug 解决办法:v-for时绑定的key唯一 [Vue warn]: Duplicate keys detected: 'area'. This may cause an update error. 原文地址:https://www.cnblogs.com/licurry/p/10192072.html