在前端开发全面进入前端的时代 作为一个合格的前端开发工作者 框架是不可或缺的Vue React Anguar 作为前端小白,追随大佬的脚步来到来到博客园,更新现在正在学习的Vue

注 : 相信学习Vue的都已经比较熟练的掌握了Js基础 ES6 jquery 日常代码调试 Node.js 环境 npm使用 不然学Vue可能比较吃力

推荐安装Vue的Chrome拓展程序方便调试代码(在谷歌商店搜索Vue 下载第一个)

vue官网指南 > https://cn.vuejs.org/v2/guide/index.html

vue在线库

 <script src="https://cdn.jsdelivr.net/npm/vue"></script>

Vue -- Hello word

HTML代码:
<div id="app">
{{ message }}
</div> js代码:
var app = new Vue({
el: '#app', //el指定位置 css选择器
data: {
message: 'Hello Vue!' //加载数据 app.message可以直接访问
}
})

看到这一步,可以确认我们打印出了第一行Vue代码,我们要怎么确认呢?打开你的浏览器的 JavaScript 控制台,并修改 app.message 的值,你将看到上例相应地更新

  • 注意!!!!!!! 刚开始会遇到这样的错误 [Vue warn]: Cannot find element

为什么呢 ? 因为: 你的脚本是在目标dom元素被加载到dom之前执行

具体解释: 你已经将你的脚本放置在页面的头部或放置在div元素之前的脚本标记。所以当脚本执行时,它将无法找到目标元素,从而出现错误。

我的解决办法 将引用的Vue库 和main.js 放在代码的最后面

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Page Title</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" media="screen" href="main.css" />
</head>
<body>
</body>
<script src="vue.js"></script>
<script src="main.js"></script>
</html>

新手请勿踩坑

接下在就开始Vue学习了

参考 Vue官方文档 书籍:Vue.js实战 个人感觉文档说说的很好 但是细节说的并不多 在博客中也对小细节进行补充

实例与数据

Vue.js 的创建非常简单 ,使用构造函数Vue就可以创建Vue的根实例,并启动Vue实例

var app = new Vue({
el:"#app",
data:{}
//选项
})

变量app代表这个实例

事实上几乎 所有的代码都是一个对象,写入Vue的实例选项内

上面说的太正式了 说简单点 吧,首先说一下 eldata代表什么

  • el : 用于指定一个页面已经存在的DOM (就是 id class) 来挂载Vue实例 可以使用js的DOM原生代码或者CSS选择器
  • data : 可以理解为Vue用到的数据值
var app = new Vue({
el:"#app",//document.getElementById("app") 当然推荐css选择器写法啦
data:{
data:1 //html 的{{ data }} 就是 1
}
//选项
})

Vue特性 双向绑定

Vue.js很有特色的功能 不说太多 贴代码

  <div id="app1">
<input type="text" v-model="my"> //v-model 双向绑定
{{ my }}
</div> js:
new Vue({
el:"#app1",
data:{
my:"欢迎来到Vue"
}
})

在输入框内输入就是左边的input就会实时变化

虽然 v-model虽然很像使用了双向数据绑定的 Angular 的 ng-model但是 Vue 是单项数据流v-model 只是语法糖而已 不过这不影响初学者使用,了解一下

今天就写这么多吧

​ 2018-2-26 23:42

Vue报错 [Vue warn]: Cannot find element的更多相关文章

  1. vue报错[Vue warn]: Unknown custom element: <router-Link> - did you register the component correctly? For recursive components, make sure to provide the "name" option.

    vue浏览器报错,如下 vue.runtime.esm.js?2b0e:619 [Vue warn]: Unknown custom element: <router-Link> - di ...

  2. vue报错[Vue warn]: The data property "record" is already declared as a prop. Use prop default value instead.

    当我写了一个子组件,点击打开子组件那个方法时报了一个错 这句话说明意思呢?谷歌翻译一下↓ 数据属性“record”已声明为prop. 请改用prop默认值. 感觉翻译的有点怪,通过最后修改代码后大概意 ...

  3. vue报错 [Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop's

    [Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent c ...

  4. Vue 报错[Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders

    场景:父组件向子组件传递数据,子组件去试图改变父组件数据的时候. 解决:子组件通过事件向父组件传递信息,让父组件来完成数据的更改. 比如:我的父组件是普通页面,子组件是弹窗的登录界面,父组件传递的数据 ...

  5. Vue 报错Error in render: “TypeError: Cannot read properties of null (reading ‘xxx’)” found in

    前端vue报错 [Vue warn]: Error in render: "TypeError: Cannot read properties of null (reading 'name' ...

  6. Vue报错 type check failed for prop “xxx“. Expected String with value “xx“,got Number with value ‘xx‘

    vue报错    [Vue warn]: Invalid prop: type check failed for prop "name". Expected String with ...

  7. Vue报错——“Trailing spaces not allowed”

    在VSCode中开发Vue 报错:“Trailing spaces not allowed” 这是空格多了,删除多余的空格就可以了

  8. vue报错Error in render: "TypeError: Cannot read property '0' of undefined"

    通常有两种情况: 1.在模板的html标签上使用length报错 vue 中使用 length判断的时候,有时会报错,如下: <div class="item_list" v ...

  9. vue 报错 :属性undefined(页面成功渲染)

    vue 报错:Cannot read property 'instrumentId' of undefined" 相关代码如下: <template> ... <span& ...

随机推荐

  1. 让div跟按键走,基本键码

    ---恢复内容开始--- 想要快速的做这样一个简单效果,首先要明白它的原理; 样式设置的重点,就是要跟上次拖拽一样,给该元素绝对定位, 事件就是onkeydown,事件,通过判断键码,来执行: < ...

  2. Angular 基础教程(1)

    简介 什么是AngularJS 一个功能非常完备的前端框架,通过增强HTML的方式提供一种便捷开发Web应用程序的方式 其核心特点就是几乎无任何DOM操作,让开发人员的精力和时间全部集中于业务 MVC ...

  3. jQuery.vilidation.js登录&注册

    代码解析:通过ajax获取url路径链接php接口做登录和注册获取到的数据传到数据库. ajax利用四步: //1.创建一个ajax对象; //2.打开请求: //判断用户传递的是get还是post请 ...

  4. jQuery 添加样式属性的优先级别

    jQuery类中添加多个属性 $('#five .a') .css({ color:'blue', border:'2px solid green', background:'blue' }); jQ ...

  5. 3D开源推荐:3DWebExplorer

    开源网址:https://github.com/irconde/3DWebExplorer 介绍:演示如何内嵌Google Earth 插件,开发面向公众的3D旅游展示平台

  6. YouTube 1080P高清视频下载方法

    在国内在线视频网站还停留在1080P蓝光的时候,YouTube早已经支持4K和8K分辨率的极清视频.虽然4K和8K的清晰度比1080P高了许多档次,但是大部分人的电脑播放4K视频还是很卡的,所以目前来 ...

  7. ubuntu 可以加速播放的播放器SMPlayer 16.4安装

    直接贴命令 sudo apt-add-repository ppa:rvm/smplayer sudo apt-get update sudo apt-get install smplayer smp ...

  8. Gym

    Gym 用于研发与比较强化学习算法的工具. 安装 pip install gym 环境 车杆问题,模型栗子CartPole-v0 env.step() ,传入0,1,表示车向左,右给1牛顿的力,现在要 ...

  9. 用$(this)选择其下带有class的子元素

    $(this).find('.son').removeClass("disn")

  10. 通过ajax给后台提交数据时,radio性别数据的获取

    通过ajax向后台异步发送数据,经常我们会遇到个人信息额提交,一般我们采用FormData来装数据.在装性别值得时候,我们会有两个radio框,获取radio值得方法如下: 一般情况下,一个radio ...