热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

vue入门,错题集

vue学习的最好材料:官方文档知识点:声明式渲染1.vue应用所有东西都是响应式的。

vue学习的最好材料 :官方文档

知识点:

声明式渲染

  1.  vue应用  所有东西都是 响应式的。
                        直接在控制器中修改   变量  的值 ,能看到相对应的更新
        问题:这样会不会不严谨,别有用心的人会不会直接找到变量然后修改数据?
  2.
        绑定元素特性:    1. 文本插值 {{ message }}    2.绑定元素属性特性  v-bind:title=”message“

条件与循环

v-if=""    v-for=""
    1.     数据可以绑定在:文本,属性,dom结构。
    2.     Vue  强大的过滤效果    在插入、更新、移除元素时  自动应用过滤效果

    

处理用户输入

v-on :事件监听  -->  v-on:click="function(){}"  -->方法写到methods里面
v-model="变量" -->实现表单输入和应用状态之间的双向绑定 -->input里面value值的双向绑定
注意: 在方法中,我们更新应用状态,但没有触碰dom元素,所有的操作都有vue处理,编写的代码只需要关注逻辑层面就行。  ???
     我的理解:我们在方法中,修改变量或者状态,并没有去触碰dom元素,所有的操作由vue处理。----vue怎么处理,就不清楚了(我的理解不一定对,欢迎更正!!!)

* 组件化应用构造(vue思想)
抽象,组件(小型,独立,可复用),大型应用使用多个组件构成。-->组件树

ARE YOU READY?

创建一个实例  --> 所有Vue组件都是Vue实例
       var  vm= new  Vue({            经常用vm表示Vue的实例
                            //选项
                                       })

选项列表

数据与方法

值变化,视图也会变化    (实例创建,data中的所用属性都加到Vue的响应式系统)。

// 我们的数据对象
var data = { a: 1 }

// 该对象被加入到一个 Vue 实例中
var vm = new Vue({
  data: data
})

// 获得这个实例上的属性
// 返回源数据中对应的字段
vm.a == data.a // => true

// 设置属性也会影响到原始数据
vm.a = 2
data.a // => 2

// ……反之亦然
data.a = 3
vm.a // => 3
我的理解图例:

理解:当我们定义的数据发生改变时,Vue实例中创建的data数据也会发生改变,视图也会发生变化。
 
  
< div id= "app" > {{message.a}} div > < script src= "../js/vue.js" > script > < script > var data={ a: 'hello'}; var vm= new Vue({ el: '#app', data:{ message: data } }) script >
-----------》》
//结果:hello

控制台编写:
            data.a='vue'--》 "vue"
            vm.message.a='hello vue' --》"hello vue"
  
Object.freeze( )  ,会阻止修改现有的属性,意味着响应系统无法再追踪变化。
          Object.freeze( data )   ;视图将不会再根据我的  data.a赋值 或 实例赋值  发生变化

要是属性刚开始不存在时?  -->  方法 是    在data中设置一些初始值  ,让它变为存在的空值
    
Vue实例中的属性和方法,都有前缀 $ , 以便用户定义的属性区分开。
                    vm.$el       vm.$data

* 实例生命周期钩子  

错题:

    1.new  Vue({ });          vue应该是大写开头,
                        报错:Uncaught ReferenceError: vue is not defined

    2.new Vue({

              el :" #app "            #忘写了额,记住el里面填写的是选择器
                      })
    3.犯了个傻错误,在methods方法中修改 data的值,忘记赋值。。。导致dom元素修改未成功
    4.  创建一个组建  
 
 
<ol>
    <todo-item>todo-item>
ol>
<script src="../js/vue.js">script>
<script>
    // 定义名为 todo-item 的新组件  Vue.component('todo-item', {
        template: '
  • 这是个待办项
  • '
    }) script>

             为什么页面上没有显示上?










    还在学习中.....


    推荐阅读
    • 实践指南:使用Express、Create React App与MongoDB搭建React开发环境
      本文详细介绍了如何利用Express、Create React App和MongoDB构建一个高效的React应用开发环境,旨在为开发者提供一套完整的解决方案,包括环境搭建、数据模拟及前后端交互。 ... [详细]
    • 本文探讨了互联网服务提供商(ISP)如何可能篡改或插入用户请求的数据流,并提供了有效的技术手段来防止此类劫持行为,确保网络环境的安全与纯净。 ... [详细]
    • JavaScript 跨域解决方案详解
      本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
    • Maven + Spring + MyBatis + MySQL 环境搭建与实例解析
      本文详细介绍如何使用MySQL数据库进行环境搭建,包括创建数据库表并插入示例数据。随后,逐步指导如何配置Maven项目,整合Spring框架与MyBatis,实现高效的数据访问。 ... [详细]
    • 本文探讨了如何通过优化 DOM 操作来提升 JavaScript 的性能,包括使用 `createElement` 函数、动画元素、理解重绘事件及处理鼠标滚动事件等关键主题。 ... [详细]
    • 本文详细介绍了JQuery Mobile框架中特有的事件和方法,帮助开发者更好地理解和应用这些特性,提升移动Web开发的效率。 ... [详细]
    • Irish budget airline Ryanair announced plans to significantly increase its route network from Frankfurt Airport, marking a direct challenge to Lufthansa, Germany's leading carrier. ... [详细]
    • 本文档介绍了如何使用OpenStack命令行工具在Keystone身份服务中创建和管理域、项目、用户及角色。随着Keystone命令向OpenStack命令集的迁移,了解这些新的命令格式对于系统管理员来说至关重要。 ... [详细]
    • 调试利器SSH隧道
      在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
    • 问题场景用Java进行web开发过程当中,当遇到很多很多个字段的实体时,最苦恼的莫过于编辑字段的查看和修改界面,发现2个页面存在很多重复信息,能不能写一遍?有没有轮子用都不如自己造。解决方式笔者根据自 ... [详细]
    • 本文详细介绍了在 Ubuntu 16.04 系统上安装和配置 PostgreSQL 数据库的方法,包括如何设置监听地址、启用密码加密、更改默认用户密码以及调整客户端访问控制。 ... [详细]
    • 理解浏览器历史记录(2)hashchange、pushState
      阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
    • 深入理解:AJAX学习指南
      本文详细探讨了AJAX的基本概念、工作原理及其在现代Web开发中的应用,旨在为初学者提供全面的学习资料。 ... [详细]
    • linux网络子系统分析(二)—— 协议栈分层框架的建立
      目录一、综述二、INET的初始化2.1INET接口注册2.2抽象实体的建立2.3代码细节分析2.3.1socket参数三、其他协议3.1PF_PACKET3.2P ... [详细]
    • 在将 Android Studio 从 3.0 升级到 3.1 版本后,遇到项目无法正常编译的问题,具体错误信息为:org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:processDemoProductDebugResources'。 ... [详细]
    author-avatar
    缅追逐暗夜的流星
    这个家伙很懒,什么也没留下!
    PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有