注册
环信即时通讯云

环信即时通讯云

单聊、群聊、聊天室...
环信开发文档

环信开发文档

环信FAQ

环信FAQ

集成常见问题及答案
RTE开发者社区

RTE开发者社区

汇聚音视频领域技术干货,分享行业资讯
技术讨论区

技术讨论区

技术交流、答疑
资源下载

资源下载

收集了海量宝藏开发资源
iOS Library

iOS Library

不需要辛辛苦苦的去找轮子, 这里都有
Android Library

Android Library

不需要辛辛苦苦的去找轮子, 这里都有
0
评论

web 埋点实现原理了解一下 web 埋点

马师傅 发表了文章 • 1016 次浏览 • 2021-04-29 16:25 • 来自相关话题

前言埋点,是网站分析的一种常用的数据采集方法。我们主要用来采集用户行为数据(例如页面访问路径,点击了什么元素)进行数据分析,从而让运营同学更加合理的安排运营计划。现在市面上有很多第三方埋点服务商,百度统计,友盟,growingIO 等大家应该都不太陌生,大多情... ...查看全部
0
评论

简易版 React-Router实现 react

马师傅 发表了文章 • 958 次浏览 • 2021-04-29 12:00 • 来自相关话题

上一篇简单的介绍了react-router 的使用方法和基本的API,对于react-router几个重要的API做了源码解读。这篇就实现一个简易版的 react-router设计思路由上图可知,核心内容就是如何监听到URL的改变?图中说到三种方式,其实也就两... ...查看全部
0
评论

React setState数据更新机制 react

马师傅 发表了文章 • 1001 次浏览 • 2021-04-29 11:42 • 来自相关话题

为什么使用setState在React 的开发过程中,难免会与组件的state打交道。使用过React 的都知道,想要修改state中的值,必须使用内部提供的setState 方法。为什么不能直接使用赋值的方式修改state的值呢?我们就分析一下,先看一个de... ...查看全部
0
评论

配置 ESLint 自动格式化自闭合标签(Self closing tag) react

马师傅 发表了文章 • 1179 次浏览 • 2021-04-29 11:39 • 来自相关话题

对于没有子元素或不需要子元素的 HTML 标签,通常写成其自闭合的形式会显得简洁些,- <SomeComponent></SomeComponent> + <SomeComponent/> 通过配置 ESLint 可在格式化... ...查看全部
0
评论

浅谈前端权限设计方案 权限管理 没有权限 vue

马师傅 发表了文章 • 977 次浏览 • 2021-04-28 18:53 • 来自相关话题

前端权限架构的设计一直都是备受关注的技术点.通过给项目引入了权限控制方案,可以满足我们灵活的调整用户访问相关页面的许可. 比如哪些页面向游客开放,哪些页面必须要登录后才能访问,哪些页面只能被某些角色访问(比如超级管理员).有些页面即使用户登录了但受到角色的限制... ...查看全部
0
评论

超过 js 的 number 类型最大值(9007 1992 5474 0992)的解决办法 bug Javascript

马师傅 发表了文章 • 2021 次浏览 • 2021-04-28 16:16 • 来自相关话题

bug经过:点击修改无法展示信息(修改时调用queryOne,以id(long)为值,页面传过去的id=1480042498255640-00 ,在数据库中该id=148004249825564012,即错误的id)根本原因:js的number类型有个最大值(... ...查看全部
0
评论

JavaScript 对象 Javascript

马师傅 发表了文章 • 909 次浏览 • 2021-04-28 16:11 • 来自相关话题

为什么要有对象?如果有一组相关的数据,松散的存储不利于使用,存入数组中受下标限制又必须有固定的顺序,而对象可以自定义名称存储一系列无序列表的相关数据什么是对象?现实生活中的对象:万物皆可对象,对象是一个具体的事物,一个具体的事物就会有行为和特征举例:一部车,一... ...查看全部
0
评论

JavaScript 函数 Javascript

马师傅 发表了文章 • 917 次浏览 • 2021-04-28 16:08 • 来自相关话题

为什么要有函数?如果要在多个地方求某个数的约数个数,应该怎么做函数的概念函数(function),也叫作功能、方法,函数可以将一段代码一起封装起来,被封装起来的函数具备某一项特殊的功能,内部封装的一段代码作为一个完整的结构体,要执行就都执行,要不执行就都不执行... ...查看全部
0
评论

JavaScript 数组 Javascript

马师傅 发表了文章 • 854 次浏览 • 2021-04-28 16:06 • 来自相关话题

为什么学习数组?之前学习的数据类型,只能存储一个值(比如:Number/String)。如果我们想存储班级中所有学生的成绩,此时该如何存储?数组的概念所谓数组(Array),就是将多个元素(通常是同一类型)按一定顺序排列放到一个集合中,那么这个集合我们就称之为... ...查看全部
0
评论

JavaScript 常见的三种数组排序方式 Javascript

马师傅 发表了文章 • 894 次浏览 • 2021-04-28 15:58 • 来自相关话题

一、冒泡排序冒泡排序 的英文名是 Bubble Sort ,它是一种比较简单直观的排序算法简单来说它会重复走访过要排序的数列,一次比较两个数,如果他们的顺序错误就会将他们交换过来,走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成这个算法... ...查看全部
0
评论

js 取小数点后几位方法 Javascript

马师傅 发表了文章 • 1341 次浏览 • 2021-04-28 15:26 • 来自相关话题

一 取后两位 为例: 四舍五入 1.toFixed() Number的toFixed()方法可把 Number 四舍五入为指定小数位数的数字。 const test = 1.12 / 3 // 0.37333333333333335 console.lo... ...查看全部
0
评论

JavaScript的小技巧 Javascript

马师傅 发表了文章 • 907 次浏览 • 2021-04-28 15:07 • 来自相关话题

类型转换数组转字符串var arr = [1,2,3,4,5]; var str = arr+''; //1,2,3,4,5 字符串转数字var str = '777'; var num = str * 1; //777 var str = '777'; v... ...查看全部
1
评论

uniapp实现$router uniapp

马师傅 发表了文章 • 3051 次浏览 • 2021-04-27 16:46 • 来自相关话题

作为 Vue 重度用户,在使用 uni-app 过程中不可避免的把 Vue 开发习惯带了过去。无论是项目目录结构,还是命名风格,甚至我还封装了一些库,如 https://zhuanlan.zhihu.com/p/141451626 提到的 ... ...查看全部
0
评论

uniapp与flutter,跨平台解决方案你该如何选择 Flutter uniapp

马师傅 发表了文章 • 4145 次浏览 • 2021-04-27 16:44 • 来自相关话题

为了做毕设,用了下uniapp与flutter,说真的,这是两款十分优秀的产品,几乎做到了各自领域性能和跨平台的极致。那么这两款产品到底有什么不同,在选型的时候应该如何取舍,这是我写这篇文章的目的。uniapp与flutter都是为了解决跨平台问题的框架uni... ...查看全部
0
评论

uni-app 的使用体验总结 uniapp

马师傅 发表了文章 • 1389 次浏览 • 2021-04-27 16:42 • 来自相关话题

[实践] uni-app 的使用总结最近使用 uni-app 的感受。使用体验没用之前以为真和 Vue 一样,用了之后才知道。有点类似 Vue 和 小程序结合的感觉。写类似小程序的标签,有着小程序和 Vue 的生命周期钩子。对比 uni-app 文档和微信小程... ...查看全部
0
评论

使用uniapp开发项目来的几点心得体会 uniapp

马师傅 发表了文章 • 1319 次浏览 • 2021-04-27 16:40 • 来自相关话题

先说一下提前须要会的技术要想快速入手uniapp的话,你最好提前学会vue、微信小程序开发,因为它几乎就是这两个东西的结合体,不然,你就只有慢慢研究吧。为什么要选择uniapp???开发多个平台的时候,对,就是开发多端,其中包括安卓、IOS、H5/公众号、微信... ...查看全部
0
评论

uni-app 悬浮框动效 uniapp

马师傅 发表了文章 • 1595 次浏览 • 2021-04-27 16:33 • 来自相关话题

<view class="menu" :class="{active:menuFlag}"> <image src="../../static/svg/1.svg" class="menuTrigger" @tap="clickMenu"&... ...查看全部
0
评论

async/await 的错误捕获 async和await

马师傅 发表了文章 • 1180 次浏览 • 2021-04-27 16:27 • 来自相关话题

一、案发现场为了更好的说明,举一个很常见的例子:function getData(data) { return new Promise((resolve, reject) => { if (data === 1) { setTim... ...查看全部
0
评论

先看看 VS Code Extension 知识点,再写个 VS Code 扩展玩玩 扩展 前端 jQuery插件

马师傅 发表了文章 • 1305 次浏览 • 2021-04-27 16:20 • 来自相关话题

TL;DR文章篇幅有点长 ,可以先收藏再看 。要是想直接看看怎么写一个扩展,直接去第二部分 ,或者直接去github看源码 。第一部分 --- Extension 知识点一、扩展的启动如何保证性能 --- 扩展激活(Extension Activat... ...查看全部
0
评论

react中的组件设计 react

马师傅 发表了文章 • 806 次浏览 • 2021-04-26 18:34 • 来自相关话题

react的组件设计有很多模式。下面列举几种常见的:完全受控组件这种组件设计的特点是,组件的所有state和action都来自props,组件自身没有状态,只负责展示UI层。model层完全交给全局状态管理库比如redux或mobx。不推荐这种组件设计,因为后... ...查看全部
0
评论

如何用webpack优化moment.js的体积 webpack

马师傅 发表了文章 • 1161 次浏览 • 2021-04-26 18:32 • 来自相关话题

本篇为转译,原出处。当你在代码中写了var moment = require('moment') 然后再用webpack打包, 打出来的包会比你想象中的大很多,因为打包结果包含了各地的local文件.解决方案是下面的两个webpack插件,任选其一:... ...查看全部
0
评论

git 撤销对文件的追踪 Git

马师傅 发表了文章 • 1054 次浏览 • 2021-04-26 18:22 • 来自相关话题

撤销暂存区(index)区的track当我们新增加文件时,使用git status会打印出:Untracked files: (use "git add ..." to include in what will be committed) ... ...查看全部
0
评论

web前端常见的三种manifest文件 前端 web

马师傅 发表了文章 • 5800 次浏览 • 2021-04-26 18:20 • 来自相关话题

manifest.jsonmanifest.json经常被用在PWA,用来 告知浏览器 关于PWA应用的一些信息如应用图标、启动应用的画面。举例:{ "short_name": "React App", "name": "Creat... ...查看全部
0
评论

谈谈react hooks的优缺点 hooks react

马师傅 发表了文章 • 1349 次浏览 • 2021-04-26 13:55 • 来自相关话题

谈一下个人认为的react hooks的优缺点,通过和传统的React.Component进行对比得出。#优点一、更容易复用代码这点应该是react hooks最大的优点,它通过自定义hooks来复用状态,从而解决了类组件有些时候难以复用逻辑的问题。hooks... ...查看全部
0
评论

React Hooks究竟是什么呢? react

马师傅 发表了文章 • 952 次浏览 • 2021-04-26 11:59 • 来自相关话题

我们大部分 React 类组件可以保存状态,而函数组件不能? 并且类组件具有生命周期,而函数组件却不能?React 早期版本,类组件可以通过继承PureComponent来优化一些不必要的渲染,相对于函数组件,React 官网没有提供对应的方法来缓存函数组件以... ...查看全部
0
评论

当面试官问Webpack的时候他想知道什么 webpack

马师傅 发表了文章 • 960 次浏览 • 2021-04-26 11:56 • 来自相关话题

前言在前端工程化日趋复杂的今天,模块打包工具在我们的开发中起到了越来越重要的作用,其中webpack就是最热门的打包工具之一。说到webpack,可能很多小伙伴会觉得既熟悉又陌生,熟悉是因为几乎在每一个项目中我们都会用上它,又因为webpack复杂的配置和五花... ...查看全部
0
评论

几个优雅的JavaScript运算符使用技巧 Javascript

马师傅 发表了文章 • 877 次浏览 • 2021-04-26 11:45 • 来自相关话题

ECMAScript发展进程中,会有很多功能的更新,比如销毁,箭头功能,模块,它们极大的改变JavaScript编写方式,可能有些人喜欢,有些人不喜欢,但像每个新功能一样,我们最终会习惯它们。新版本的ECMAScript引入了三个新的逻辑赋值运算符:空运算符,... ...查看全部
0
评论

uniapp你是真的坑!! uniapp

马师傅 发表了文章 • 1355 次浏览 • 2021-04-23 15:20 • 来自相关话题

最近要做一个锚点的效果,于是用到了这个方法,先获取节点信息,然后根据节点高度与页面滚动距离得到所需滑动的距离,但是这里有一个大坑,搞了两天,百思不得其解!就是h5端是正常的,app上不行,看了文档后也不存在兼容问题,于是,这里省下一百字骂人的话。。。uni.c... ...查看全部
0
评论

h5转uniapp项目技术总结 uniapp h5

马师傅 发表了文章 • 1320 次浏览 • 2021-04-23 15:14 • 来自相关话题

h5项目转uniapp项目总结why先说一下为什么要用uniapp,主要是因为之前我们刚做完云闪付小程序(webview页面),老板又让我们做抖音小程序(后面还会做各种小程序),于是我们就想到了uniapp,之前也没做过想想也挺激动的项目目录├── READM... ...查看全部
0
评论

mpvue不维护了,已经成型的mpvue项目怎么办 uniapp mpvue

马师傅 发表了文章 • 2825 次浏览 • 2021-04-23 15:13 • 来自相关话题

mpvue作为美团技术团队的一个KPI产品,莫名其妙突然就不维护了,随着node版本和项目依赖不断更新,你会发现你原先的项目可能突然跑不起来了,此时你需要mpvue的替代品,没错,我要说的就是uni-app。只需几步,你可以很轻松的把mpvue项目迁移到uni... ...查看全部
0
评论

JS实现精确倒计时 Javascript

马师傅 发表了文章 • 1347 次浏览 • 2021-04-23 14:43 • 来自相关话题

实现倒计时对前端工程师来说,是很常见的需求。那么,要怎么实现精确的倒计时呢?首先,考虑到客户端时间和服务端时间有误差,所以计算倒计时的时候,应该读取服务端的时间。但是,只考虑到这一点还远远不够的。页面运行时间长了,新打开页面的倒计时和原打开页面的倒计时还是存在... ...查看全部
0
评论

webpack手写loader 前端面试 webpack

马师傅 发表了文章 • 970 次浏览 • 2021-04-22 18:32 • 来自相关话题

手写loader   我们在在Webpack配置基础篇介绍过,loader是链式传递的,对文件资源从上一个loader传递到下一个,而loader的处理也遵循着从下到上的顺序,我们简单了解一下loader的开发原则: 单一原则: 每个Loader只做一件事,... ...查看全部
0
评论

深入webpack打包原理 前端面试 webpack

马师傅 发表了文章 • 992 次浏览 • 2021-04-22 18:27 • 来自相关话题

本文讨论的核心内容如下: webpack进行打包的基本原理 如何自己实现一个loader和plugin 注: 本文使用的webpack版本是v4.43.0, webpack-cli版本是v3.3.11,node版本是v12.14.1,npm版本v6.13.... ...查看全部
0
评论

关于 webpack 的几个知识点 前端面试 webpack

马师傅 发表了文章 • 1034 次浏览 • 2021-04-22 14:01 • 来自相关话题

随着现代前端开发的复杂度和规模越来越庞大,已经不能抛开工程化来独立开发了,比如 sass 和 less 的代码浏览器是不支持的, 但如果摒弃了这些开发框架,那么开发的效率将大幅下降。在众多前端工程化工具中,webpack 脱颖而出成为了当今... ...查看全部
1
评论

关于webpack面试题总结 前端面试 webpack

马师傅 发表了文章 • 1413 次浏览 • 2021-04-22 12:00 • 来自相关话题

最近在读《webpack深入浅出》,总结一下webpack关于面试常见的问题,分享出来,希望可以帮助更多小伙伴在找到心爱的工作和期待的薪水。一.常见的构建工具有哪些?他们各自优缺点?为什么选择了webpack?Grunt、Gulp、Fis3、Rollup、Np... ...查看全部
0
评论

NodeJs中的stream(流)- 基础篇 文件发送 node.js

马师傅 发表了文章 • 955 次浏览 • 2021-04-22 11:48 • 来自相关话题

一、什么是Stream(流) 流(stream)在 Node.js 中是处理流数据的抽象接口(abstract interface)。 stream 模块提供了基础的 API 。使用这些 API 可以很容易地来构建实现流接口的对象。 流是可读的、可写的,或... ...查看全部
0
评论

Bootstrap Table web 前端 HTML5

马师傅 发表了文章 • 967 次浏览 • 2021-04-21 21:53 • 来自相关话题

前端1.BootStrap Table1.1.1 HTML<div> <div class="panel-body table-responsive"> <table id="productTable" class="tab... ...查看全部
0
评论

JavaScript重构技巧 — 函数和类 函数 Javascript

马师傅 发表了文章 • 910 次浏览 • 2021-04-21 21:21 • 来自相关话题

JavaScript 是一种易于学习的编程语言,编写运行并执行某些操作的程序很容易。然而,要编写一段干净的JavaScript 代码是很困难的。在本文中,我们将介绍一些与清理 JavaScript 函数和类有关的重构思想。不要直接对参数赋值在使用参数之前,我们... ...查看全部
0
评论

我是如何在 Vue 项目中做代码分割的 前端 web vue

马师傅 发表了文章 • 1049 次浏览 • 2021-04-21 21:18 • 来自相关话题

通常为了开发效率,我们会使用 vue-cli 创建项目,这样创建的项目默认情况下编译是会对代码进行分割的。但是如果是自行配置的 webpack 环境的话,还是很有必要熟悉代码分割的相关知识的。为什么要做代码分割在配置 webpack 的过程... ...查看全部
0
评论

高质量代码的原则 web 安全性

马师傅 发表了文章 • 800 次浏览 • 2021-04-21 21:15 • 来自相关话题

简单性原则What:追求简单自始至终都以最简单的逻辑编写代码,让编程初学者一眼就能看懂。在编程时我们要重视的是局部的完整性,而不是复杂的整体关联性。Why:Bug 喜欢出现在复杂的地方软件故障常集中在某一个区域,而这些区域都有一个共同的特点,那就是复杂。编写代... ...查看全部
0
评论

TS实用工具类型 前端 typescript

马师傅 发表了文章 • 1075 次浏览 • 2021-04-21 21:14 • 来自相关话题

Partial<Type>构造类型Type,并将它所有的属性设置为可选的。它的返回类型表示输入类型的所有子类型。例子interface Todo { title: string; description: string; } fu... ...查看全部
0
评论

复杂场景下的h5与小程序通信 HTML5 小程序

马师傅 发表了文章 • 940 次浏览 • 2021-04-20 11:59 • 来自相关话题

复杂场景下的h5与小程序通信一、背景在套壳小程序盛行的当下, h5调用小程序能力来打破业务边界已成为家常便饭,h5与小程序的结合,极大地拓展了h5的能力边界,丰富了h5的功能。使许多以往纯h5只能想想或者实现难度极大的功能变得轻松简单。但在套壳小程序中,h5与... ...查看全部
0
评论

小程序自动化测试 小程序

马师傅 发表了文章 • 1062 次浏览 • 2021-04-20 11:53 • 来自相关话题

背景近期团队打算做一个小程序自动化测试的工具,期望能够做到业务人员操作一遍小程序后,自动还原之前的操作路径,并且捕获操作过程中发生的异常,以此来判断这次发布是否会影响小程序的基础功能。上述描述看似简单,但是中间还是有些难点的,第一个难点就是如何在业务人员操作小... ...查看全部
0
评论

键盘设置如何优化小程序使用体验? 小程序

马师傅 发表了文章 • 1052 次浏览 • 2021-04-20 11:44 • 来自相关话题

在小程序开发过程中,用户输入是必不可少的,我们经常会需要用户输入一些内容,来完成产品收集用户信息的需求。在这种情况下,我们可以考虑借助小程序提供的一些和键盘相关的 API 来优化小程序的使用体验。Input 组件的 type 属性从小程序的 1.0 版本开始,... ...查看全部
0
评论

小程序canvas实现图片压缩 小程序

马师傅 发表了文章 • 1199 次浏览 • 2021-04-20 11:37 • 来自相关话题

我们需要在选择图片后对图片做一次安全校验启用云开发现在我们需要一个 后端接口 来实现图片的 安全校验 功能这时候临时搭个Node服务好像不太现实又不是什么正经项目于是就想到了微信的云开发功能用起来真实方便快捷至于图片的校... ...查看全部
0
评论

小程序的「获取URL Scheme」能力 小程序

马师傅 发表了文章 • 1286 次浏览 • 2021-04-20 11:32 • 来自相关话题

最近,微信小程序更新了一项新的能力:「获取URL Scheme」,这是一项非常有用的功能,你可以借助他,在微信生态中实现各种有意思的营销方式。什么是 URL Scheme微信提供了一个接口,可以生成如 weixin://dl/business/?t=... ...查看全部
0
评论

Web 安全 之 Clickjacking web 安全性

马师傅 发表了文章 • 1002 次浏览 • 2021-04-19 14:08 • 来自相关话题

Clickjacking ( UI redressing )在本节中,我们将解释什么是 clickjacking 点击劫持,并描述常见的点击劫持攻击示例,以及讨论如何防御这些攻击。什么是点击劫持点击劫持是一种基于界面的攻击,通过诱导用户点击钓鱼网站中的被隐藏了... ...查看全部
0
评论

Web 安全 之 Directory traversal web 安全性

马师傅 发表了文章 • 1005 次浏览 • 2021-04-19 14:05 • 来自相关话题

Directory traversal - 目录遍历在本节中,我们将介绍什么是目录遍历,描述如何执行路径遍历攻击和绕过常见障碍,并阐明如何防止路径遍历漏洞。什么是目录遍历?目录遍历(也称为文件路径遍历)是一个 web 安全漏洞,此漏洞使攻击者能够读取运行应用程... ...查看全部
0
评论

Web 安全 之 HTTP Host header attacks web 安全性

马师傅 发表了文章 • 1623 次浏览 • 2021-04-19 13:59 • 来自相关话题

HTTP Host header attacks在本节中,我们将讨论错误的配置和有缺陷的业务逻辑如何通过 HTTP Host 头使网站遭受各种攻击。我们将概述识别易受 HTTP Host 头攻击的网站的高级方法,并演示如何利用此方法。最后,我们将提供一些有关如... ...查看全部
0
评论

Web 安全 之 HTTP request smuggling web 安全性

马师傅 发表了文章 • 918 次浏览 • 2021-04-19 13:54 • 来自相关话题

HTTP request smuggling在本节中,我们将解释什么是 HTTP 请求走私,并描述常见的请求走私漏洞是如何产生的。什么是 HTTP 请求走私HTTP 请求走私是一种干扰网站处理多个 HTTP 请求序列的技术。请求走私漏洞危害很大,它使攻击者可以... ...查看全部