前端
文章平均质量分 63
大大黄、
这个作者很懒,什么都没留下…
展开
-
手写日历【发布订阅】
发布者订阅者模式手写日历,方便后续自定义日历原创 2022-07-14 15:38:11 · 332 阅读 · 0 评论 -
前端用户行为分析
前端用户行为分析监控模式数据监控监听用户行为PV/UV(浏览量和点击量)用户每个页面停留时间用户访问网页的入口用户在各个页面触发的行为性能监控监听网页或者说产品在用户端的体验不同用户,机型,系统首屏加载的时间http请求等待时间静态资源加载时间各页面渲染时候前端埋点方案代码埋点以嵌入代码的形式进行埋点,监听用户点击事件,输入事件等将数据保存发送给server端可在任意时刻,精确的发送或者保存所需要的数据代码侵入性较强可视化埋点通过可视化交互的手段,代替代码原创 2021-11-03 11:26:10 · 702 阅读 · 0 评论 -
一张图理解js的Event Loop机制
原创 2021-03-04 16:48:45 · 164 阅读 · 2 评论 -
JS的执行顺序
JS执行顺序基本1.所有代码放入执行栈中自上而下执行2.遇到异步函数,则将回掉函数添加到任务队列中(定时器,DOM事件,ajax,Promise,process.nextTick)3.执行栈中代码执行结束,开始 循环任务队列中函数4.将任务队列中函数放入执行栈中执行5.如此往复,称之为事件循环任务队列1.任务队列分为宏任务和微任务2.任务队列将任务放到执行栈中执行宏任务宏任务,macrotask ,也叫tasks, 异步任务的回调会依次进入macro task queue,等待后续被调原创 2021-02-24 10:24:35 · 745 阅读 · 0 评论 -
Typescript(二)
注:Typescript 中的面向对象TS面向对象面向对象是程序中一个非常重要的思想,它被很多同学理解成了一个比较难,比较深奥的问题,其实不然。面向对象很简单,简而言之就是程序之中所有的操作都需要通过对象来完成。举例来说:操作浏览器要使用window对象操作网页要使用document对象操作控制台要使用console对象一切操作都要通过对象,也就是所谓的面向对象,那么对象到底是什么呢?这就要先说到程序是什么,计算机程序的本质就是对现实事物的抽象,抽象的反义词是具体,比如:照片是对一个原创 2021-01-28 17:37:22 · 413 阅读 · 0 评论 -
Typescript学习(一)
注:主要是TS使用的配置,TS数据类型,以及TS结合webpack0.什么是TSTypeScript(TS) 是Javascript 的超集(JS有的TS都有);TypeScript = Type + JavaScript (为JS添加了类型系统)typescript相比js的优势: JS的类型系统存在“先天缺陷” , 绝大部分错误都是类型错误(Uncaught TypeError)优势一:类型化思维方式,是的开发更加严谨,提前发现错误,减少改Bug时间优势二:类型系统提高了代码可读性,原创 2021-01-28 17:35:26 · 481 阅读 · 1 评论 -
react知识点总结 -- redux(四)
Redux 使用前言:javascript 开发的应用程序,已经变得越来越复杂了javascript需要管理的状态越来越多,越来越复杂这些状态包括服务器返回的数据,缓存数据,用户操作产生的数据等等,也包括一些UI的状态,比如某些元素是否被选中,是否显示加载动效,当前分页管理不断变化的state是非常困难的状态之间会相互存在依赖,一个状态的变化会引起另一个状态的变化, view页面也会引起状态的变化当应用程序复杂的时,state在什么时候,因为什么原因而发生了变化,发生了怎么样的变化原创 2020-11-22 13:02:25 · 354 阅读 · 0 评论 -
react样式,请求,动画相关知识点(三)
React (样式,axios,动画)组件化天下的CSS前面说过整个端已经是组件化的天下:而css的设计就不是为组件化而生的,所以在目前组件化的框架中都在需要一种合适的css解决方案在组件化中选择合适的CSS解决方案应该符合以下条件可以编写局部css:css具备自己的局部作用域,不会随意污染其他组件内的原生可以编写动态css:可以获取当前组件的一些状态,根据状态的变化生成不同的css支持所有的css特性:伪类,动画,媒体查询编写起来简洁方便,最好符合一贯的css风格特点Re原创 2020-11-22 13:01:11 · 199 阅读 · 0 评论 -
react组件知识点总结(二)
不可变数据的力量总之不要直接更改state的数据因为浅层比较的时候,会比较前后的数据是否变化,一但没有变化,则不会更新UI事件总线前面通过Context主要实现的是数据的共享,但是在开发中如果有跨组件之间的事件传递,应该如何操作呢?在Vue中我们呢可以通过Vue的实例,快速实现一个事件总线,来完成操作在React中,我们可以来一个使用较多的库events 来完成对应的操作我们可以通过npm或者 yarn来安装eventsevents常用的API创建EventEmit原创 2020-11-22 13:00:10 · 216 阅读 · 3 评论 -
微信小程序知识点总结
小程序文件结构APPapp.js 创建App实例代码以及一些全局相关的内容app.json 全局的一些配置,比如 window/tabbarapp.wxss 全局的一些样式配置Pagepage.js 创建Page 实例的代码, 以及页面相关内容page.json 业务单独的配置,比如页面对应的 window配置,usingComponentspage.wxml 页面的 wxml 布局代码page.wxss原创 2020-11-22 12:53:13 · 1410 阅读 · 0 评论 -
Vue2.x模块化开发知识点总结
模块化开发常见的 模块化的规范CommonJS AMD CMD 也有 ES6的 ModulesCommonJS需要底层支撑commonJS的导出:module.exports = { flag:true, test(a,b){ return a+b }, demo(a,b){ return a*b }}commonJS的导入:let {test,demo,flag} = require('modu原创 2020-11-21 17:59:19 · 1035 阅读 · 0 评论 -
webpack 简单配置知识点总结
webpack基本使用起步webpack基于node环境,如果想要使用webpack管理自己的项目,那么就需要先安装 node.js安装webpack有两个作用域,一个是全局,一个是项目作用域【局部】接下来就可以打包了打包第一步有唯一 的入口文件main.js 出口文件 bundel.js入口文件可以对其他文件做依赖,使用 es6模块化,commenJS 都可以命令 webpack 入口文件main.js路径 出口文件bundel.js路径这样 就可以打包出来原创 2020-11-21 17:58:19 · 164 阅读 · 0 评论 -
vue2.x进阶知识点总结
组件化高级注:可以先看vue基础篇插槽1.slot组件模板定义的时候需要插槽的话 给一对 <slot> </slot> 标签即可, 在使用子组件的时候,组件内部填充的所有内容,元素就会被匹配到这个插槽上本身 <slot> </slot> 可以给一个默认值,该默认值 在使用这个组件 没有给插槽内容的时候会自动使用2.具名插槽 slot组件模板定义的时候插入 <slot> </slot> 插槽,此时原创 2020-11-21 17:57:01 · 429 阅读 · 0 评论 -
Vue2.x基础
`第一遍Vue:MVVMModel View ViewModelview(视图层)在我们前端开发中,通常就是DOM层,主要是给用户展示各种信息Model (数据层) 数据可能使我们固定死的数据,更多的是来自我们服务器,从网络上请求下来的数据,在我们计数器案例中,就是后面抽取出来的obj,当然,里面的数据可能没有那么简单、VueModel(视图模型层)视图模型层是View和Model沟通的桥梁,一方面它实现了DataBinding,也就是数据绑定,将Model的改变实时的反应原创 2020-11-21 17:55:31 · 274 阅读 · 0 评论 -
git基本使用
git基本使用安装下载https://npm.taobao.org/mirrors/git-for-windows/ 淘宝镜像 本身git下载较慢下载好之后 一直 next , 安装好后 右键 gitBash Here 打开命令 输入 git version 查看git 版本使用前配置使用git之前 ,我们需要告诉git 我是谁,我的一些信息,因为,在向git仓库提交代码时候需要知道这个代码是谁提交的,基本的一个信息git config --global user.原创 2020-11-21 17:53:00 · 64 阅读 · 0 评论 -
flutter知识点总结
第一个flutter应用flutter中布局等已经不再等同于web页面的开发方式了,首先我们需要引入material 包,那么什么是material呢?material是谷歌公司推行的一套设计风格,或者叫做设计语言,设计规范等里面有很多规范,比如颜色文字排版,响应式动画与过度,填充等等在Flutter中高度集成了 Material风格的 widget, 在我们应用中,我们可以直接使用这些Widget来创建我们的应用第一个程序 Hello World注意一个坑,flutter项目路径中包含中原创 2020-11-21 17:48:25 · 743 阅读 · 0 评论 -
Dart 的使用(基础)
Dart 的使用https://juejin.im/post/5d7a36ac6fb9a06ad5474b50 掘金 codeWhy 知识点总结安装配置1.使用Dart 语言 首先需要配置Dart环境,那么我们就需要下载 dart SDK ,然后找到bin文件夹路径,配置到环境变量2.编辑器的选择,我们用什么去书写dart。 选择vscode ,可以安装插件 dart ,后续还会用到flutter ,因此一起安装,方便运行编译,安装下 run code插件简单使用1.dart原创 2020-11-21 17:47:04 · 907 阅读 · 0 评论 -
react-navigation 5X版本总结
react-navigation V5 总结注: 5x版本不同于4x版本,包括包,以及使用方法都有较大的改变。安装yarn add react-native-gesture-handler react-native-screens react-native-safe-area-context @react-native-community/masked-view @react-navigation/nativeyarn add react-native-gesture-handler react原创 2020-11-21 17:45:58 · 882 阅读 · 0 评论 -
axios配置及使用(发起请求时带上token)
1.安装利用npm安装npm install axios --save2.引入即可使用import axios from 'axios'3.目录4.各个文件设置:(1)env.jsexport default { // 接口地址 baseURL: 'http://localhost:8090/scheduleweb/', isDev: true}(2)index....转载 2020-03-23 09:28:01 · 11753 阅读 · 0 评论 -
关于Vue中 v-on事件绑定命名大写问题
Vue中 v-on 和 v-bind 中不建议使用 camelCase 或 PascalCase 命名方式首先补充下基础知识:HTML是不区分大小写的。而JS区分。所以一般情况下,JS的大小写变量放到HTML中,会将大写改成小写,并在前面添加短杠。事件名首先不存在 任何自动转化大小写的能力,因此所触发的事件名称必须与监听的名称 完全匹配假如你想触发一个事件this.$emit('myCa...原创 2019-09-23 22:55:02 · 3379 阅读 · 0 评论