摘要: Vue 数据双向绑定主要是指: 数据变化更新视图 视图变化更新数据。 即: 输入框内容变化时,Data 中的数据同步变化。即 View => Data 的变化。 Data 中的数据变化时,文本节点的内容同步变化。即 Data => View 的变化。 其中,View 变化更新 Data ,可以通过事 阅读全文
posted @ 2020-04-03 23:55 Mr_Riven 阅读(1703) 评论(0) 推荐(0) 编辑
摘要: 如果被问到 Vue 怎么实现数据双向绑定,大家肯定都会回答 通过 Object.defineProperty() 对数据进行劫持,但是 Object.defineProperty() 只能对属性进行数据劫持,不能对整个对象进行劫持。同理无法对数组进行劫持,但是我们在使用 Vue 框架中都知道,Vue 阅读全文
posted @ 2020-04-03 23:53 Mr_Riven 阅读(1702) 评论(0) 推荐(0) 编辑
摘要: 这个router有两种模式:hash模式(默认)、history模式(需配置mode: 'history') 然后,我们来研究下两者的原理: 我们先来认识下这位朋友#,这个#就是hash符号,中文名哈希符或锚点,当然这在我们前端领域姑且这么称呼。 然后哈希符后面的值,我们称之为哈希值。OK,接下来我 阅读全文
posted @ 2020-04-03 22:11 Mr_Riven 阅读(2402) 评论(0) 推荐(0) 编辑
摘要: 实际上存在三种模式: Hash: 使用URL的hash值来作为路由。支持所有浏览器。 History: 以来HTML5 History API 和服务器配置。参考官网中HTML5 History模式 Abstract: 支持所有javascript运行模式。如果发现没有浏览器的API,路由会自动强制 阅读全文
posted @ 2020-04-03 21:34 Mr_Riven 阅读(10102) 评论(0) 推荐(0) 编辑
摘要: 先说下基本概念: ssr 的全称是 server side render,服务端渲染,vue ssr 的意思就是在服务端进行 vue 的渲染,直接对前端返回带有数据,并且是渲染好的HTML页面; 而不是返回一个空的HTML页面,再由vue 通过异步请求来获取数据,再重新补充到页面中。 这么做的最主要 阅读全文
posted @ 2020-04-03 21:10 Mr_Riven 阅读(658) 评论(0) 推荐(0) 编辑
摘要: 父子通信 (1)父组件向子组件传值props <button-counter :title="send"></button-counter> Vue.component('button-counter', { props: ['title'], data: function() { return { 阅读全文
posted @ 2020-04-03 20:31 Mr_Riven 阅读(988) 评论(0) 推荐(0) 编辑
摘要: 我们在 vue 项目中主要使用 v-model 指令在表单 input、textarea、select 等元素上创建双向数据绑定,我们知道 v-model 本质上不过是语法糖,v-model 在内部为不同的输入元素使用不同的属性并抛出不同的事件: text 和 textarea 元素使用 value 阅读全文
posted @ 2020-04-03 19:54 Mr_Riven 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 如果两个实例引用同一个对象,当其中一个实例的属性发生改变时,另一个实例属性也随之改变,对象没有自己的作用域,只有当两个实例拥有自己的作用域时,才不会相互干扰。 这是因为JavaScript的特性所导致,在component中,data必须以函数的形式存在,不可以是对象 组件中的data写成一个函数, 阅读全文
posted @ 2020-04-03 19:38 Mr_Riven 阅读(943) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2020-04-03 19:17 Mr_Riven 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 在做电商有关的项目中,当我们第一次进入列表页需要请求一下数据,当我从列表页进入详情页,详情页不缓存也需要请求下数据,然后返回列表页,这时候我们使用keep-alive来缓存组件,防止二次渲染,这样会大大的节省性能。 keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,避免重 阅读全文
posted @ 2020-04-03 13:16 Mr_Riven 阅读(1248) 评论(0) 推荐(0) 编辑
摘要: 比如有父组件 Parent 和子组件 Child,如果父组件监听到子组件挂载 mounted 就做一些逻辑处理,可以通过以下写法实现: // Parent.vue <Child @mounted="doSomething"/> // Child.vue mounted() { this.$emit( 阅读全文
posted @ 2020-04-03 12:57 Mr_Riven 阅读(854) 评论(0) 推荐(0) 编辑