都知道vue中实现了数据和视图的双向绑定,但具体是如何实现的呢?今天就说说 我阅读的vue2中的代码实现的个人所得,如果说错了,欢迎指正。注:我阅读的vue2代码的版本是v2.2.6,且都是以单文件的方式展示列子, 可以结合下一篇续给出的实际例子结合起来看,更容易理解 话不多说,首先上结论,然后再通过图以及代码进行详细解释结论:m->v: 利用观察者模式,当数据改变的时候通知其观察
使用 VuePress 搭建个人博客VuePress 是一个基于 Vue 的静态网站生成器。其中主要用到:Vue,VueRouter,Webpack。 类似的工具:hexo基于 Markdown 语法生成网页可以使用 Vue 开发的组件使用 VuePress 搭建个人博客:创建远程仓库本地博客项目搭建其它创建远程仓库
来到 Github,创建仓库没有用户的话先注册。新建一个仓库: 点左边的New或
转载
2024-07-18 06:27:21
79阅读
vue 双向绑定初探起源用vue有一段时间了,在使用的过程中发现了两个有意思问题:1、对数组的限制,检测不到下面两个行为利用索引直接设置一个项修改数组的长度var vm = new Vue({
data: {
items: ['1', '2', '3']
}
})
vm.items[1] = 'a' // 不是响应性的
vm.items.length = 5 //
Vue简介数据流Vue实例对象vue常用指令class结合v-bind使用methods 和 v-on的使用v-on高级用法v-for的使用简单学生添加删除案例父子组件使用父传子父组件向自组件传递数据子组件向父组件通信vuebusvue高级vue过滤器获取DOM元素vue-router命名路由router-link 参数传递编程式导航原生监听锚点值改变重定向和404多视图模式嵌套路由vue-re
转载
2024-07-13 20:19:53
59阅读
问题
在 vue2 中对表单控件有着良好的双向数据绑定机制,但是对于要特定实现某些功能的输入时,我们就不得不使用到 contenteditable="true" 的 div ,而在这个 div 上是使用 v-model 是没有效果的。那么问题就来了,输入是非常需要双向绑定的,这里的双向数据绑定该如何实现?
解决思路一:自定义指令
当然,说在这一段的前面,这种解决方式在 vue2 中是不行的,为什
转载
2021-06-29 16:53:56
620阅读
vue2实现瀑布流
原创
2024-04-11 11:47:00
159阅读
vue中,测试环境,生产环境,是通过打包来识别和运行的。 识别关键字其实他内部封闭好了。 可以用:process.env.NODE_ENV 来识别。 比如:process.env.NODE_ENV === ‘production’ //说明是生产环境,还有develop\test等 具体做方是,在根目录建一个vue.config.js,然后里边写:第一步: const path = require
问题在 vue2 中对表单控件有着良好的双向数据绑定机制,但是对于要特定实现某些功能的输入时,我们就不得不使用
转载
2022-03-29 15:54:04
419阅读
实现功能:树结构、右键菜单、拖拽 效果图vue2 + js版/components/drag-tree/utils/utils.jslet _treeId = 0;
/**
* 初始化树
* @param {Array} tree 树的原始结构
* @param {Object} props 树的字段值
* @param {Boolean} defaultExpandAll 是否展开节点
跨域设置 http://www.ituring.com.cn/article/200275 打包 npm adduser 如果长时间不登录,可能会过期,使用 npm login 进行登录就可以 pu
原创
2021-07-23 11:32:15
391阅读
eslint用于代码检查,prettier用于代码格式化,具体操作如下1.安装以下eslint插件
安装以下eslint插件,并增加.eslintrc.js配置文件,.eslintignore配置忽略检查的文件(1)eslint
用于检查和标示出ECMAScript/JavaScript代码规范问题工具。
(2)@babel/eslint-parser
简而言之就是一个解析器,允许您使用ES
转载
2024-05-29 12:57:59
283阅读
main.js App.vue action.js getters.js index.js mutation.js types.js
转载
2017-06-24 05:50:00
220阅读
vue2
原创
2021-08-01 18:40:40
412阅读
最近项目开发中遇到需要用到ie浏览器的情况,因为是内网开发,大致记录下兼容过程。问题1:ie11浏览器页面无法加载首先遇到的问题是谷歌浏览器运行无问题,控制台也不报错,但是ie11浏览器就打不开,控制台报错----显示语法错误:,了解后发现ie浏览器不支持es6,可以通过core-js/stable及regenerator-runtime/runtime编译,vue cli官方推荐使用,main.
转载
2024-04-03 14:52:36
210阅读
环境准备这里我们就直接使用官方推荐的Vue CLI方式CLI (@vue/cli) 是一个全局安装的 npm 包,提供了终端里的 vue 命令。它可以通过 vue create 快速创建一个新项目的脚手架,或者直接通过 vue serve 构建新想法的原型。CLI 服务 (@vue/cli-service) 是一个开发环境依赖
目录一、项目基本配置二、Eslint语法规范型检查 一、项目基本配置修改项目信息 package.json 文件{
"name": "XXX",
......
"description": "XX系统",
"author": "tom<123456@qq.com>",
......
}修改端口号 config/index.js中修改port:
转载
2024-07-29 09:30:58
87阅读
0 前言从Vue2升级到Vue3,可能最大的变化之一就是Composition Api了。 Composition Api是什么东西为啥要用它?怎么用它?有什么需要注意的吗? 面对陌生的它,我们在这儿先简单认识一下它,而具体如何使用以及使用的注意点,将会在后续的文章更新中介绍,可以关注本文最后持续更新的扩展阅读部分。1 是什么Composition Api,也就是组合式Api。 我认为,它解决的主
转载
2023-11-06 12:52:14
247阅读
什么是JSX摘自 React 官方: 它被称为 JSX,是一个 JavaScript 的语法扩展。我们建议在 React 中配合使用 JSX,JSX 可以很好地描述 UI 应该呈现出它应有交互的本质形式。JSX 可能会使人联想到模板语言,但它具有 JavaScript 的全部功能。Vue 什么时候应当使用JSX这里说的是应当,而不是必须。因为在绝大多数情况下,模板语法都能胜任,只不过写起来看着不太
转载
2024-06-03 15:34:33
66阅读
有时候急着学更多新知识会把最基础的遗忘,以前使用PHP那会还知道表单序列化,最近通过form获取里面所有name属性对应的控件值却把document.getElementById('表单Id').serializeArray()给遗忘了,通过遍历name属性去获取表单控件值-----勿忘初心需求:之前项目大都是后台进行最后的登录接入,现在用了vue需要前端自己通过实现登录页面,以博客登录为例,登录
转载
2024-08-08 16:39:40
268阅读
步骤一:集成standard标准的eslint进你的项目中首先准备一个没有加入eslint的vue项目 1.安装eslint的包 npm i eslint -D 2.初始化eslint,并生成eslint配置文件 npx eslint --init3.依次按照问题选择自己需要的配置 你想要的怎么使用eslint? 选择第三个:检查,发现问题,并且约束代码风格 你的项目使用的是什么模块? 选择第一个
转载
2024-06-12 14:16:51
274阅读