- 博客(38)
- 收藏
- 关注
原创 函数中arguments的处理方法
函数的参数列表arguments是一个类型组对象,虽然它也有下边,但是不像一个真正的数组一样,进行排序操作或者使用数组的一些方法!解决方法1.去Array.prototype对象借用方法如: push,等等3.以上为学习笔记!
2023-03-08 22:16:52
116
原创 webpack教程
为什么要使用webpack在一开始打包我们通过研究如何引入 js 代码,提出了我们传统的直接通过 script 标签,来去加载全部的 js 代码问题,于是我们提出了将全部的 js 代码,都打包到一个 js 文件的方案,但是这种方案会存在作用域,文件大小,可读性,可维护性方面的问题 ,在解决作用域的时候,我们给出了应用立即调用函数的表达式,就是IIFE的方式,可这种方式存在大量的无用代码,文件体积太大,导致了构建和加载效率的问题,所以不得不对代码进行拆分,对于代码拆分,我们利用node.js 基.
2022-05-26 13:21:27
360
原创 生成随机不重复ID插件
uuid官方地址 https://www.npmjs.com/package/uuid/*安装地址*/ npm install uuid/* 使用*/import { v4 as uuidv4 } from 'uuid';uuidv4(); // ⇨ '9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d'//注释:不推荐使用,包量太大,影响性能nanoid官方地址 https://zelark.github.io/nano-id-cc//*安装地.
2022-04-07 15:18:33
732
原创 函数的柯里化
函数的柯里化概念:通过函数调用继续返回函数的方式,实现多次接收参数最后统一处理函数的编码形式,就是柯里化柯里化代码演示 // 普通写法 function sum(a,b,c) { return a+b+c } const sums = sum(1,2,3) console.log(sums); // 柯里化写法 function sum(a) { return (b)=>{ return (c)=>{ return a+b+c.
2022-04-03 18:46:41
303
原创 React中的三种ref获取DOM节点
第一种ref字符串方式获取Dom节点方式已废弃的原始方法 class Dom extends React.Component{ showInputDom = () =>{ const {userNameInput} = this.refs console.log(userNameInput); } render(){ return ( <div> <input ref="user.
2022-04-03 17:37:50
4599
原创 初入React引包+搭建脚手架
引包<!-- 引入react核心库 --><script src="https://cdn.bootcdn.net/ajax/libs/react/16.13.1/umd/react.development.js"></script><!-- 引入react-dome 支持react操作dom --><script src="https://cdn.bootcdn.net/ajax/libs/react-dom/16.13.1/umd/react
2022-04-03 01:53:32
888
原创 axios配置选项
{ // `url` 是用于请求的服务器 URL url: '/user', // `method` 是创建请求时使用的方法 method: 'get', // 默认是 get // `baseURL` 将自动加在 `url` 前面,除非 `url` 是一个绝对 URL。 // 它可以通过设置一个 `baseURL` 便于为 axios 实例的方法传递相对 URL baseURL: 'https://some-domain.com/api/', // `trans
2022-03-28 16:30:29
376
原创 递归深拷贝数据
注:有的时候我们需要从栈中开辟一道新的路径时,进行深拷贝数据/** * 定义了一个新的obj数据 */ let obj = { num : 10, str : 'string', arr : [1,2,3,4], arr2 : {a:'1'} }; /** * 同理我们把新的数据赋予给了 newObj * 但是我们的数据的路径是与obj 的路径一致的 */ //.
2022-03-28 13:37:54
1838
原创 文字多余隐藏
display: -webkit-box; // 将元素和转化为谷歌的盒子 -webkit-line-clamp: 2; // 最多两行 overflow: hidden; // 超出的文本隐藏 text-overflow: ellipsis; // 将超出的文本转化为... -webkit-box-orient: vertical; // 盒子内容排列方式是纵向 text-indent: 2em; // 首行缩进连个字-webkit- 加上各浏览器私有前缀.
2022-03-14 11:00:59
160
原创 js加减乘除浮点型精确运算方法
因为计算机数字是浮点型,所以在计算过程中通常得到的并不是一个准确的数据,我们这里就来写一下精确运算的方法!!首先是加法 (这里以两个数据相加为例)function add(arg1, arg2) { arg1 = arg1.toString(), arg2 = arg2.toString(); // 将传入的数据转化为字符串 var arg1Arr = arg1.split("."), // 将小数的数据从小数点的位置拆开 arg2Arr = arg2.split("
2022-02-24 19:17:46
616
原创 vue解决跨域问题
在vue根目录下创建出vue.config.jsmodule.exports = { devServer: { proxy: '代理服务器地址' }}// 或者module.exports = { devServer: { proxy: { '/api': { target: '代理服务器地址', ws: true // webscoket changeOrigin: true //是否允许跨域, pathRewrite:{ //修改请求头
2022-02-21 15:13:38
437
原创 vue3+vant 移动端适配
Vant 中的样式默认使用 px 作为单位,如果需要使用 rem 单位,推荐使用以下两个工具:postcss-pxtorem 是一款 postcss 插件,用于将 px 单位转化为 remlib-flexible 用于设置 rem 基准值安装依赖yarn add amfe-flexible或者使用npm i amfe-flexible然后在 main.js 中加载执行该模块:import 'amfe-flexible'安装postcss-pxtorem依赖yarn add -D po
2022-01-11 00:00:00
220
原创 简单封装axios
第一步在根目录中创建 Api 文件夹 分别为Api.js and http.js 在Aip 中引入axiosimport axios from ' axios'第二步在Api.js 中创建实例化 axios const http = axios.create({ baseURL: '', // 所有请求的公共地址部分 timeout: 3000 // 请求超时时间 这里的意思是当请求时间超过5秒还未取得结果时 提示用户请求超时})设置 request 请求拦截
2022-01-07 15:28:08
194
原创 uniApp的简单封装
在项目中我们使用请求 需要通过api封装为什么要封装api?因为在项目中 请求使用的地方会有很多 不利于后期维护 如果我我们讲api封装出来 只需要维护api文件就可以了!这里以uniapp封装api来写小程序为例!第一步先在项目目录中创建一个utils文件夹 在该文件夹下创建一个js文件为请求的封装, 话不多少代码如下!// 封装请求const http = ({url, method='get', data=''}) => { return new Promise((
2022-01-04 15:30:17
2147
原创 vue3,watchEffect和watch监听
立即执行传入的一个函数,同时响应式追踪其依赖,并在其依赖变更时重新运行该函数。import { watchEffect,ref,reactive } from 'vue';// 1-1.监听 ref 声明的值setup(){ const count = ref(0); watchEffect(()=>{ console.log(count.value) // 这里的值会被打印两次,0,1 }) setTimeout(() => {
2021-12-31 11:30:51
715
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人