备注代码
TypeScript 深入浅出
什么是 TypeScript?
TypeScript 是一种由微软开发的自由和开源的编程语言。它是 JavaScript 的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。
简而言之,TypeScript是JavaScript的超集,具有可选的类型并可以编译为纯JavaScript。从技术上讲TypeScript就是具有静态类型的 JavaScript 。
vue-Router
任何框架的学习,要想学习好,首先必须全部了解最基本的 api,然后才是框架的封装,框架的优化,框架的底层原理,框架的源码。
工作项目的开发没有问题,不代表你就已经完全了解了vue-Router,认真的研究文档的每一个细节,会保证你的开发思路更加清晰,开发效率更高。
vue3 通信方式
vue3 通信方式
本文会涉及的知识点:
nvm windwos 安装、使用、切换node找不到npm的问题
需求
前端开发经常要切换不同node版本的需求,但是windows下安装nodejs比较麻烦,所以使用nvm来安装nodejs,可以自如的管理切换node的不同版本。
安装
- 下载nvm-setup.exe
下载地址:https://github.com/coreybutler/nvm-windows/releases - 安装
- 安装完成后,在cmd中输入nvm,如果出现如下信息,说明安装成功
简单实现模拟 vue 的数据响应
主要实现的是修改对象里面的属性,从而使得页面中的显示改变。
采用的是:
- Object.defineProperty 这个属性来监听对象属性的改变
- window 设置一个变量,来记录当有属性改变的时候,将需要调用的函数记录一下
- set 中,当数据属性修改的时候,for 循环来调用相关改变页面的的函数
项目-博客-插件库 (代码已开源)
该博客是本人5年前写的,主要技术栈用的是node+mongodb+swig模板引擎+vue+boot+微信小程序,通过小程序的引流,网站的用户量达到3000+,插件上传俩量达到4000+ 个。
可以实现用户注册,用户登陆,私人博客文章展示,插件上传,插件功能的预览和下载,技术书籍的电子版,前端技术相关的视频学习等功能。
相关的代码和安装流程,可以查阅本人的github,代码已经开源,下载安装就可部署此网站和管理系统。
主要实现的功能如下:
后台管理系统
mongodb windows 安装
MongoDB是一个基于分布式文件存储 [1] 的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
MongoDB下载
vue3和vue2的区别整理
api及语法
双向绑定原理
- Vue2使用Object.defineProperty 为每个属性创建getter和setter,通过getter和setter来捕获操作以实现响应式更新; 很多情况下,属性的新增和删除拦截不到(比如数组的长度变化)
- Vue3使用Proxy,Proxy可以拦截对象和数组的变化,包括新增和删除属性,数组的长度变化等,从而实现更精确的响应式更新
v2 使用object.defineProperty来劫持数据的setter和getter方法,对象改变需要借助api去深度监听;
v3 使用proxy来劫持整个对象,不需要深度监听,性能更好,删除了一些api($on,$once,$off) fiter等,优化了Block tree,solt,diff 算法等
Vue2在data中定义的数据就会自动遍历绑定Object.defineProperty以实现响应式;Vue3中要用ref包装,通过返回值的 .value属性获取响应式的值 ,修改也需要对 .value进行修改.
关于我
– 1991 年出生,2013.08 在北京从事前端至今。
电子简历:
点击查看电子简历 (PDF)
工作历程
- 2023.11-至今 山西研毅科技有限公司
- 2019.4-2023.10 威马智联科技(北京)有限公司
- 2017.12-2019.3 东易日盛装饰网家科技有限公司
- 2016.4-2017.11 北京红演圈网络科技有限公司
- 2015.7-2016.3 北京万象娱通爱看儿童乐园网络科技股份有限公司
前端作品
能力
- 熟练掌握语义化的 HTML 和具有兼容性的 CSS 模式,熟练手写符合 W3C 标准的结构和代码。
- 有多年的 VUE、react 的实战开发经验,能快速的搭建前端架构并是项目落地。
- 熟练掌握微信小程序、支付宝小程序、抖音小程序,并有相关的实战项目。
- 对 可用性、可访问性、前端性能优化、最优实践 等有一定的了解和实践。
- 熟练掌握 HTML5 和 CSS3。
- 熟练掌握 postman、禅道、蓝狐、yapi、jenkins 等等前端开发和团队协作工具。
- 熟练掌握 jQuery,实现日常需要的交互效果。
- 对前端 canvas,svg 有一定了解。
- 对 node 有一定的了解和使用
- 喜欢接触新事物,有一定的自学能力。
联系
- 联系 QQ:598349146
- 邮箱:598349146@qq.com/gu_syb@sina.com
- 微信号:s20200929
- 抖音号:ssy_0301
- github:https://github.com/xiaosongread