自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(113)
  • 收藏
  • 关注

原创 ES6重点(三)之模块化 export、import

文章目录一、export二、import三、export default*:在es6的模块化中,不论有无"use strict",自动采用严格模式一、export用途:暴露接口案例:export.js文件中:var fn=function(){ console.log(1)}var obj={name:"syy"};export {fn,obj}import.j...

2019-09-14 11:06:24 178

原创 ES6重点(二)之Generator、async、await

文章目录一、Generator一、Generator概念: Generator 函数是 ES6 提供的一种异步编程解决方案,语法行为与传统函数完全不同;[引入阮一峰老师的《ES6的入门》]形式: 在Generator函数中,有yield表示不同的状态,在函数声明后要加上 *function * fn(){ yield'1'; yield'2'; return '3'}var fu...

2019-09-11 11:36:06 260

原创 ES6重点(一)之箭头函数、Promise

一、箭头函数二、promisepromise.all()promise.race()微任务

2019-09-08 21:05:46 1576

原创 React中Link跳转

LinkLink跳转携带隐形参数:<Link to={{ pathname: 'agent-openservice/', query:{ shop_id:row.shop_id, merchant_id:row.merchant_id } }} />可通过this.props.location.query拿到所传参数对象缺点:页面刷新

2021-03-02 19:49:37 3182

原创 antd Switch等组件根据后端返回值设置defaulChecked值无效

<Switch onChange={showQrCode} defaultChecked={!!defaultCompanyStatus.qrCodeStatus} > </Switch>其中defaultChecked为后端返回值,但是此值不生效解决方法一:不设置defaultChecked,设置checked,但是需要根据后端返回值手动更新checked值解决方法二:给Swi...

2020-11-19 21:54:39 3647 8

原创 js根据URL下载文件

两种情况url经过后端处理,返回的是文件流url没有经过后端处理,返回的是文件存储地址url第一种情况:window.open('url')缺点:会打开一个新的窗口,请求完成后自动关闭,用户体验不是特别好,但是问题不大<a href="url" download="文件名"></a>虽然不会打开新弹窗,但是兼容性不好,IE 需要>IE13,safari暂未支持第二种情况:上面的方法对于第二种情况,都只是跳转页面并展示图片,但是并不会自动下载使用can

2020-11-19 12:29:34 2473

原创 url获取传参

在react中,如果url是以这种形式:http://sftc.com/page/id/name/age先在路由路径中配置变量/page/:id/:name/:age在跳转时配上变量内容this.props.history.push({pathname:`page/${id}/${name}/${age}`})通过this.props.match来获取其中的params属性包含了所有以/:id该形式传的参数如果是以这种形式传参的:/getcash?name=丰食&..

2020-09-23 11:12:44 280

原创 ES6两种新的数据结构-----Set+Map

Set:组内成员唯一,包括NAN undefined nulllet set =new Set([NaN,undefined,NaN,undefined,null,null,1,1,2,"2",{},{}]) // {NaN, undefined, null, 1, 2,"2",{},{}} // size:8 => Array的length其内部的判断条件和===几乎一样,除了NAN。Action:每个对象都是不一样的,因为其内存地址都不一样返回值add(val)

2020-09-16 20:54:45 166

原创 ES6----Symbol

ES5的对象属性名都是字符串,这容易造成属性名的冲突。比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin模式),新方法的名字就有可能与现有方法产生冲突。如果有一种机制,保证每个属性的名字都是独一无二的就好了,这样就从根本上防止属性名的冲突。这就是ES6引入Symbol的原因。换言之:凡是属性名属于Symbol类型,就都是独一无二的,可以保证不会与其他属性名产生冲突let age = Symbol();var obj1 = {};obj1[age] = 12;// obj

2020-09-16 17:59:46 119

原创 ES6----数组拓展

Array.from(x,fn(x)):返回一个新数组任何有length属性的对象,都可以通过Array.from方法转为数组,而此时扩展运算符就无法转换。与扩展运算符一样,能够将某些数据结构转换为数组对象类型:注意:0,1,2是索引值,如果变成将0,1,2写成变量名,则转换出来的数组是[undefined,undefined,undefined],而拓展运算符则没有办法转换。let arrayLike = { '0': 'a', '1': 'b', '2':

2020-09-14 17:14:06 121

原创 解构赋值

解构赋值数组赋值基本用法默认值对象赋值number&&boolean赋值函数赋值圆括号()案例:Action!解构赋值的规则是,只要等号右边的值不是对象或数组,就先将其转为对象。由于undefined和null无法转为对象,所以对它们进行解构赋值,都会报错。平常经常使用解构赋值,所以总结一下。数组赋值基本用法若等号右边不是数组类型(严格说是不具有可遍历性,则会报错)let [a,b] = [1,2]//[a,b]=>[1,2]let [a,...b] = [

2020-09-10 19:52:46 161

原创 2020.08.24---whistle手机代理

whistle手机代理打开whistle页面,点击https,选中Download RootCA下载好后打开,选择证书,选中whistle证书,选择始终信任iphone手机 => 选择与电脑相同的wifi,设置代理地址,服务器ip与电脑本地ip一致,端口号为8899将2中下载的文件传给手机,手机安装好=> 通用=>关于本机=>代理,选中信任whistle代理在电脑的whistle界面,设置好自己的代理服务,如下图...

2020-08-24 15:31:20 776

原创 2020.08.20---小程序的text标签太坑了

好好的一个span标签被整成text标签,内容换行还会导致行高有问题!!!!气死人!!!!<text wx:for="{{item.bankList}}" wx:key="{{item.code}}" bindtap="chooseBank" data-name="{{item.name}}"data-code="{{item.code}}">{{item.name}} </text>我觉得一行内容太多,想规整一些,结果换行以后,text的内容竟然也换行了,太傻比了这个设置!!

2020-08-20 20:54:04 249 1

原创 2020.08.18--------小程序伪类实现0.5px遇到的border-radius问题

问题:tag边框要求为0.5px,于是选择使用::after实现,结果发现使用了伪类后,border-radius达不到预期的要求于是自己写了小样式来测试代码:.border { position: relative; line-height:40px; text-align:center; color:#0ac993; width:200px; border-radius:20px;/* 设置圆角 */ background: pink;

2020-08-19 00:40:26 718

原创 2020.08.17----微信小程序rpx+sass

rpx、px-以iphone6为ui图开发人员在css文件中以px为单位使用的话,要除以2才能当做正常的尺寸使用,即45px;开发人员在微信小程序的wxss文件中以rpx为单位使用的话,要写成90rpx。苹果6模板 换算关系: ui给定的90px = 原生iOS的45 = css的45px = 微信小程序的90rpx摘出来可以得知,css的px和wxss的rpx的换算关系:1px = 2rpx在vscode中编写小程序,并使用sass先在微信开发者工具生成你的项目使用vscode打开项

2020-08-18 10:59:07 471

原创 2020.08.11------微信小程序封装通用方法(获取用户位置授权)

封装的api:const getLocation = function(type,complete,altitude,isHighAccuracy,highAccTime){ return new Promise((resolved,rejected) => { wx.getLocation({ type:type, altitude: altitude, isHighAccuracy:isHighAccuracy, highAccTime

2020-08-11 21:46:56 361

原创 2020.8.10-----微信小程序学习/object.entries

1.注册账号2.记住AppID3.创建小程序开发4.一些api =>查看官方文档5.生命周期onLoad: 页面加载 一个页面只会调用一次,可以在 onLoad 中获取打开当前页面所调用的 query 参数。onShow:页面显示 每次打开页面都会调用一次。onReady: 页面初次渲染完成一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。对界面的设置如wx.setNavigationBarTitle请在onReady之后设置。详见生命周期onHide: 页面隐藏

2020-08-11 10:23:34 357

原创 2020.8.5 -----saas营运后台迭代小需求

选择器antd组件的方法应该怎么调用,例如InputNumber的blur()登陆时效过期 使用w2进行代理登陆后获取cookie值检查=>Network=>info=>headers=>request header=>cookies将cookie值复制粘贴到项目中设置代理的代码中一般设置代理的代码都长这样 proxy: { "/": { "target": "http://xxxxx", "changeOrigi

2020-08-05 22:32:32 230

原创 常用的git命令总结

git clone [url] ------------获取远程代码git pull---------------------更新代码git add . ------------------提交所有文件git commit -m ----------‘更改了巴拉巴拉’git push origin [A]:[B] -----将本地分支的代码提交到远程仓库的分支git checkout [A] -----------切换分支git branch ----------..

2020-08-04 23:11:36 243

原创 react refs 实现人民币=>美元的互相转换

实时获取真实dom元素import React from "react"import ReactDOM, { render } from "react-dom"class Practiseref extends React.Component{ changeTodollar=(e)=>{ this.refs.myinputdollar.value=e.target.value*7 if( this.refs.myinputdollar.value=="0

2020-08-03 23:23:58 406

原创 create-react-app报错以及npm start报错

file as the current user npm ERR! npm ERR! If you believe this mightbe a permissions issue, please double-check the npm ERR! permissionsof the file and its containing directories, or try running npm ERR!the command again as root/Administrator.npm ERR.

2020-08-03 13:24:30 619

原创 react-Hooks与生命周期的关系以及使用hooks做一个todolist

非常多的案例详情见添加链接描述useStatenum:状态值setNum:相当于原来的setState,修改num的状态useState(0):默认值,num=0const [num,setNum] = useState(0);import React ,{ useState} from 'react'export default () => { const [num,setNum] = useState(0); return (

2020-08-02 22:12:30 1022

原创 redux学习

store:数据仓库;state:一个对象,所有对象都放在一个state;Action:一个动作,触发数据的改变方法Dispatch:将动作触发成方法;Reducer:一个函数,通过动作改变数据,生成一个新的state流程:import Redux, {createStore} from 'redux'createStore表示创建一个库,初始化数据创建了一个store的库const store = createStore(reducer);reducer用于通过动作去修改.

2020-08-01 21:04:23 151

原创 react-router

给link to属性添加对象在组件中的data.location中可以查看到相应的值,并且hash、seach值会被自动拼接到url上Action!虽然直接传值也能获取,但是又一个专门接收值的属性=>state:{name:"sy"}动态路由:跳转时传递参数 <Link to="/Message/Info/">MessageIofo</Link> <Route path="/Message/Info/:id" component={MessageIo

2020-08-01 18:16:13 151

原创 Todolist总结-Mock/axios-antd的调用

详情代码:todolist-antdMock虚拟数据的axios调用;下载axios、mock在要使用axios的地方import axios from 'axios'一般都是在componentDidMount(){}生命周期中(组件已经挂载到DOM上)发送请求Get请求axios.get('url',{dataType:"json"}).then(res=>{console.log(res)}).catch(err=>{console.log(err)})po

2020-07-31 17:58:06 149

原创 React 组件式Todolist

项目已上传至git仓库,src/component遇到的问题:list数据保存在主页面的state中,其余组件中不再使用state进行数据的更改单向数据流,基本不考虑子组件=>父组件多级传递的情况在我的代码中,总共有三级,总页面=>新增事件组件/总列表组件=>总列表组件是由多个事件组件构成的当我删除单个的事件组件时,需要获取到每一个的id值,本能的想到从子组件传给中层组件再传给父组件,但是考虑到数据的单向传递以及并没有使用redux等工具,所以将删除方法写在总页面中,在子

2020-07-30 20:52:55 160

原创 上班第二周学习记录

这里写目录标题工作项目react学习基础知识工作项目antd插件接收新项目如何阅读代码react学习class ButtonIson extends React.Component{ constructor(props){ super(props) this.state={buttonisOn:true}; //this.handleCLick=this.handleCLick.bind(this) } handleCLi

2020-07-30 20:18:58 98

原创 项目启动

使用w2抓包代理工具,配置一个代理地址,目前名为proxy,项目中设置target为代理地址,并从页面中获取cookie值进行测试环境开发,但是我的版本这边cookie一直有问题,还没解决,不知道为啥,裂开。...

2020-07-24 19:37:46 110

原创 上班前两天总结

第一天了解公司大致业务(虽然也没搞懂什么)安装软件、搭建环境vscode注册公司的一堆账号绑定邮箱----Foxmail----【注意公司收发端口】----新人每天的日报下载git-----mac安装git简易方式----从vscode终端命令行输入git,如果没有安装,则会移动弹出是否安装git窗口,点击确认即可绑定git账号git config --global user.name "你的登录名"git config --global user.email "你的

2020-07-24 17:53:50 212 2

原创 拼多多、云从前端面试

// 1. 垂直居中// 2. 响应式布局// 3. meta http-equiv=“cache-control” content=“no-cache”// 4. 怎么实现登录、登录状态// 5. 怎么判断一个数据是正整数(比如5, ‘5’)/^{1-9}+|$/// 6. v-show/v-if// 7. 怎么进行前端页面渲染的优化// 8. vue里的computed 是什...

2019-10-17 14:15:52 400

原创 原生NodeJs的优缺点以及Express框架

原生NodeJs:优点:单线程执行成多线程,非阻塞I/O,事件环机制;不会傻等一个事件结束再执行下一个,会采用异步的方式执行事件,当遇到需要读取磁盘或者数据库等操作时,会将其塞入事件环中,形成非阻塞I/O,提高cpu利用率。缺点:路由处理代码不直观清晰,需要很多正则或者字符串表达式由于是异步事件,不能专注也业务代码,要考虑很多其他的东西呈递静态页面很不方便,需要处理每一...

2019-10-09 14:01:29 3801

原创 浏览器缓存

强缓存:直接从本地读取,不询问服务器,返回状态码200.在请求资源时,会从header中读取时间,判断是否从服务器获取。expires:时间刻Cache-Control:max-age=3600,优先级高于expires协商缓存:会向服务器查询资源是否更新,没有更新则调取缓存。第一次请求时:第二次请求资源没有发生改变时:响应头中有一个Etag,返回一串编码,若缓存内容有变,...

2019-10-07 11:31:56 186

原创 NodeJs学习笔记(七):原生Post请求+formidable

post请求发送一个表单在nodejs中,post请求是一小段一小段接收的,为了防止一个巨大无比的表单阻塞了线程,故一段一段接收,在接收一小段时,可能还会去服务别的请求。queryString:将post发送的值转化为对象name=sy&age=21&sex=famela&host=sichuan&host=shanxiqueryString.parse('...

2019-10-06 16:27:29 302

原创 NodeJs学习笔记(六):模块化+搭建依赖+案例

一、模块相互引用export.xxx:暴露接口var foo=require("./xx.js"):接收一个文件,这个foo为顶层变量,可以直接foo.xxx获取。module.export=fn:fn为构造函数,也就是一个类。注意:require()一个文件时,会直接执行这个文件。二、node_modules依赖包我们在require一个js文件时,都必须使用相对路径,否则会...

2019-10-02 16:43:04 449

原创 NodeJs学习笔记(五):静态资源,根目录下匹配相应的文件及其Content-type

在输入url时,不需要输入根目录,就可以显示相应的文件,例如javascript http://192.168.124.170:3000/index.html实际上实在test文件下的文件,但是不必输入test。使用的新api:path.extname(pathname): 传入一个路径名,即可获取文件的属性,例如index.html=>.htmlvar http=require(...

2019-10-01 20:48:18 718

原创 NodeJs获取外部json数据并转换的小问题

我想从读取一个json文件,并对json数据进行操作,代码如下: fs.readFile("./test/mime.json",function(err,data){ var mimetype=JSON.parse(JSON.stringify(data)); res.writeHead(200,{"Content-type":"text/html;char...

2019-10-01 20:26:56 733

原创 NodeJs学习笔记(四):api之fs、以及异步递归转换成同步

fs:读取文件 异步!!readFile(url,callback(err,data))url:读取文件的路径,一定要为相对路径,读取时注意启动服务器的路径也得是相应路径,如果在全局路径下启动服务器,虽然启动成功,但是读取不了内部的相对路劲callback:回调函数,err有错误,data读取文件的内容var http=require("http");var fs=requir...

2019-09-30 20:56:47 309

原创 NodeJs学习笔记(三)demo:小型表单提交

本地写一个信息表单:form.html <form action="http://192.168.124.170:3000" method="Get"> <input type="radio" name="sex" value="女">女 <input type="radio" name="sex" value="男"&g...

2019-09-30 15:33:53 194

原创 NodeJs学习笔记(二):api之http、url

Httpvar http=require("http")//表示建立一个服务器,回调函数表示接收请求之后做的事情var server=http.createServer(function(req,res){ //req表示请求,res表示相应 console.log(req.url);//=>在cmd上打出路径 res.end()//=>必须有,否则浏览器一直出去...

2019-09-30 14:03:57 207

原创 NodeJs学习笔记(一):特点

HelloWorld网页查看源代码原因:nodejs是服务器程序,所以js在服务器就已经运行好了,返回的是结果,故在浏览器看不到运行代码要想更改代码,必须在终端终止当前运行的服务器。cmd=>ctrl+cnode可以直接运行jsnode没有web容器概念,直接访问html文件无效...

2019-09-29 21:15:16 104

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除