自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 http-server

采用http-server本地运行前端项目http-server是一个简单的零配置的命令行http服务器(基于nodejs),它足够强大便于生产和使用,用于本地测试和开发。一般我们打开一个网页都是通过files协议本地打开的方式,当前端项目打包之后想在本地查看发布效果的时候,这时需要在本地开启一个服务,此时http-server开始起作用。

2023-05-24 17:41:32 351

原创 uniapp H5预览PDF文件

在根目录下创建hybrid文件夹,再创建html文件夹,将解压的pdf.js放入html文件夹中。

2023-05-04 11:30:01 2051 3

原创 如何注册LINE

(由于区域限制,重庆和西安地区收不到验证码,则需让上海的同事帮忙注册,即帮你绑定你的Facebook,然后你通过Facebook登录)2、在App Store下载App时,不要从iCloud登录,容易封号,导致手机被锁死。3、在安卓进入LINE,通过此Facebook账号进行登录即可。1、IOS版的LINE 不支持退出登录的,只能卸载重新安装。3、将此Facebook账号在ios的LINE上进行绑定。2、在安卓手机上注册一个新的facebook账号。

2023-03-15 20:57:23 3522

原创 PC端技术——导出表格、上传、 进度条、计数器、选择日期、时间选择器、带输入建议、富文本、腾讯地图、上传exle、图片加水印

将表格中的内容导出,可以下下来,作为exl表等。

2023-02-18 10:27:26 402

原创 uniapp——登录、分享、扫码、轮播图指示点、页面滚动、海报画版、背景音乐、自定义导航栏、传参乱码、H5预览PDF文件

1、uniapp中的css window-top,H5和小程序之间的差距,距离的顶部的距离。有就把以前的删了,在把现在的id放在数组最前面。把数据detail.content写在里面。查看当前的id以前缓存中是否有。

2023-02-05 10:06:12 1119

原创 uniapp的坑

5、若需要禁止蒙版下的页面滚动,官方说法是使用@touchmove.stop.prevent="moveHandle" moveHandle可以用来处理touchmove事件,也可以是一个空函数,但是真心是没用,最后我是使用一个变量来控制是否需要上拉加载的操作。4、在字体或者高度使用了rpx,那么需要注意这样的写法意味着随着屏幕的变宽,字体会变大拉伸,高度会变大,如果你需要固定的高度,那么应该使用px。12、要在地图表层增加元素,使用cover-view覆盖原生组件,因为原生组件的层级是最高的。

2023-02-05 10:01:59 778

原创 uniapp项目

2、减少pages里的代码,减少静态图片的引入,可以使用oss图片,引入https路径。在pages同级pages_home生成此目录,里面可放组件和图片。页面中的数据DOM树、data、mounted三者之间的加载顺序。的位置引入,注意给style标签加入lang="scss"属性。文件--新建--项目--默认模板--Vue2--创建。中,引入并使用uView的JS库,注意这两行要放在。2.1.4 在引入uView的全局SCSS主题文件。两种引入方式:npm、下载。模式的项目,还需要在项目。

2023-01-29 14:55:30 1303 1

原创 store——数据存储

此页面就是对数据的增加和删除改变进行封装。

2023-01-29 14:54:53 855

原创 uniapp ——苹果安卓系统——手机左滑返回监听

监听安卓及苹果系统的物理返回上一页:目前以下方法APP,不支持小程序 / H5 等平台。

2023-01-12 09:54:56 1814

原创 uniapp开发技术

但是巧妙运用了loading,就是只有等loading完之后,才能执行该执行的步骤。还有一种方式就是,在loading的时候,将按钮设置为disable,不能点击。(但触发底部uniapp的生命周期函数已经写好了,不需要我们自己写节流了)一般用于按钮的点击,用户点击后,在一段时间后才能点击执行里面的函数。缺点:弹窗里面内容有滚动条的也会无法滚动。值应为某子元素id(id不能以数字开头)一般用于高频触发的事件、比如触发底部等。进入页面某个元素需要出现在可视区。下面这个也不算防抖,

2023-01-11 17:48:49 803

原创 Linux命令

3. 一个文件通过计算得到的一串字符串,文件内容的唯一标记(文件内容不变,指纹不会变)# 以分页的方式浏览文件信息(适合查看大文档),进入浏览模式 less 文件名。# 查看详细信息,元数据信息(用户、组、大小、创建时间、权限信息、文件类型)# 查看文件中的全部信息(适合查看小文档) cat 文件名。# 查看指定目录下的文件。# 在指定目录位置,创建文件夹,并创建父文件夹。# 实时滚动显示文件的最后10行信息(默认10行)# 查看当前目录下的文件列表。# 修改文件A的名字为文件B。

2023-01-08 21:53:41 563

原创 JavaScript删除对象中某个属性——delete

【代码】JavaScript删除对象中某个属性——delete。

2023-01-05 16:14:39 333

原创 项目中--常见错误

或者 index.html:23 Uncaught TypeError: Cannot set properties of null (setting 'onclick')==> 这种可能是onblur前面的类名与你定义的类名不一致,仔细检查一下。==>await只在异步函数和顶级模块体中有效,设置async。==> 删除 unpackage/dist/dev所有内容。

2022-12-22 11:01:43 758

原创 解决Hbuilder报错问题--net::ERR_CERT_AUTHORITY_INVALID

在Hbuilder安装目录中找到下面的文件,然后把那句代码注释掉。

2022-12-21 17:45:25 655

原创 时间操作——moment.js参考文档

是一个轻量级的JavaScript时间库,它方便了日常开发中对时间的操作,提高了开发效率。日常开发中,通常会对时间进行下面这几个操作:比如获取时间,设置时间,格式化时间,比较时间等等。下面就是我对moment.js使用过程中的整理,方便以后查阅。

2022-12-20 16:34:27 5030

原创 uniapp的生命周期

创建 初始化 挂载 销毁。

2022-12-19 10:15:52 7288

原创 GitLab的使用

从当前分支merge feature/login分支的内容,如果有两个人修改了同一个文件的同一行,则会有冲突,可以在IDE工具上先解决当前冲突然后再提交。当我们工作完成,需要把分支改动提交到主线时,我们就要用到分支合并"git merge 来源分支"注意事项:切换分支的时候,如果当前分支有改动没有提交,是不能切换分支的,需要先把改动的内容提交或者放入缓存区。这时会提示我们切换到分支”bin“ ,使用"git branch"查看分支,*号就显示到分支”bin“上。

2022-11-21 22:54:36 1135

原创 uniapp——uniapp如何打包成安卓——自有证书

Android平台打包发布apk应用,需要使用数字证书(.keystore文件)进行签名,用于表明开发者身份。自己输入的密钥库口令 是后面在hbuilder上要填的 证书私钥密码 (比如123456)Hbuilder下方的控制台会显示安装包的路径,则将其发给手机,进行安装即可。jdk11后jre不显示出来了,可以在jdk安装目录下输入下面的命令。在Huilder里,点击上方的发行 > 选第一个 原生APP-云打包。是后面在hbuilder上要填的 证书文件。然后选择使用自有证书。

2022-11-13 09:10:36 3532 1

原创 uniapp——JDK17安装教程 和 环境变量配置

注:JDK17新版本,会自动配置环境变量,在dos命令窗口中,输入java和javac以及java -version都能弹出相关JDK信息,但是在后序使用中,Tomcat等与JDK默认配置环境变量不兼容,所以我强烈建议不使用JDK自动配置的环境变量,自己手动配置。5、输入JAVA_HOME 和 JDK的安装路径注:(不要包括bin文件) ,可以直接点击浏览目录选中JDK的安装路径。6、选中系统变量中的 Path 点击编辑,此处可以删除系统给你配置的JDK环境变量(如下图)4、在 系统变量 中,点击新建。

2022-11-13 09:09:48 788

原创 React——路由——概念、环境、创建路由、页面跳转、传参数、配置符 *、子路由、重定向、React解决跨域

Link和useNavigate实现组件切换时,实计上伴随着组件的销毁与创建,所以建议只有整体页面切换时才使用路由,而局部切换时使用最原始的隐藏显示为佳,这样可以保让组件中通过ajax得到的数据一直存在。不管是主路由还是子路由,只要组件内嵌在标签"BrowserRouter"中,就可以使用hook-useNavigate或标签Link直接使用正确的路由path访问到;中的"/404"是任意写的一个不存在的路由path,所以不是非要写成"/404"

2022-10-18 15:50:26 1545 1

原创 React-HOOK——React中类似于vue中的插槽、自定义HOOK、插槽和自定义HOOK配合使用、useReducer

useReducer和useState都可以用来管理组件的状态,它们之间最大的区别就是,useReducer将状态和状态的变化统一管理在reducer函数里面,这样对于一些复杂的状态管理会十分方便我们debug,因为它对状态的改变是封闭的。而由于useState返回的setState可以直接在任意地方设置我们状态的值,当我们组件的状态转换逻辑十分复杂时,它将很难debug,因为它是开放的状态管理。总体的来说,在useReducer和useState如何进行选择的问题上我们可以参考以下这些原则:

2022-10-17 19:08:04 1905

原创 React-HOOK——useRef、useCallback、useMemo、useContext、useReducer

如果它们作为props传递给了子组件的话,即使其它props的值没有发生变化,它都会使子组件重新渲染,而无用的组件重渲染可能会产生一些性能问题。==>无用的组件重渲染(父组件将函数传入给子组件,重新渲染的时候被函数就会被重新定义)每次重新生成新的内嵌函数还有另外一个问题就是当我们把内嵌函数作为dependency传进useEffect的dependencies数组的话,

2022-10-14 17:21:11 1391

原创 React-Hook——Hook、useState、useEffect、面试题

useEffect(() => { }) //每次组件渲染都执行useEffect(() => { return () => { } }, []) //组件第一次渲染执行,组件移除时触发clean函数useEffect(() => { return () => { } }, [count])//count改变才会执行,组件重新渲染前触发clean函数。

2022-10-13 15:20:20 1259

原创 React——类组件==>函数组件——memo(无用的渲染、shouldComponentUpdate / Pure Component、React.memo)、context上下文

实际上,除了实例的context属性(this.context),React组件还有很多个地方可以直接访问父组件提供的Context类组件:所有能访问this的地方都可以==>this.context无状态的函数组件:)

2022-10-13 10:33:38 975

原创 React-class——Redux、ant Design

在标准的MVC框架中,数据可以在UI组件和存储之间双向流动,而Redux严格限制了数据只能在一个方向上流动。2.2、action用于对state 进行更新处理,表示要执行的动作,通过dispatch(action)触发;store.subscribe(componentMethods):订阅store的修改,只要store发生改变,组件中的回调函数就会被执行;store.dispatch(action):用于派发action,触发reducer,执行修改动作;eg--结束的时候,跟图书管理员说的话;

2022-10-13 10:32:13 496

原创 React-class——路由(简介、基本使用、路由组件懒加载、路由传参、嵌套路由、路由认证)

React构建的是单页面应用,使用路由实现页面跳转。通过管理 URL,实现组件的切换和状态的变化: 实现了路由的核心功能,提供了router的核心api。如Router、Route、Switch等,但没有提供有关dom操作进行路由跳转的api;: 基于react-router,加入了在浏览器运行环境下的一些功能,例如:Link组件,会渲染一个a标签。路由模式分为:BrowserRouter(history)(不带#号)和HashRouter(带#号)。

2022-10-12 16:35:16 1044

原创 React-class——React表单与事件(受控组件与非受控组件、事件类型、事件对象、事件绑定)、React组件生命周期、面试

时,一般都要为表单元素传入应用状态中的值,我们需要根据表单元素中用户的输入,对应用数据进行相应的操作和改变。- React对原生的事件系统也进行了封装,在React中的事件对象实际上是一个跨浏览器的**虚拟事件对象** ,它拥有和原生事件对象相同的属性和方法。受控组件的值由props或state传入给受控组件(表单的输入框),用户在元素上交互或输入内容会引起应用state的改变。在我们用React开发应用时,为了更好地管理应用中的数据,响应用户的输入,编写组件的时候呢,我们就会运用到**

2022-10-12 16:35:09 720

原创 React-class ——React 组件、 React Props(属性传值)、React State(状态)

这是标题2这是标题2);}}方式2:通过React自定义组件(DOM元素):**函数定义**//箭头函数const MyApp = () => 这是一个段落

2022-10-11 16:47:16 1765

原创 React-class——React简介、React环境安装、React项目结构、JSX语法、面试题

react中 app.js 导出的是函数vue中导出的是对象React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设Instagram 的网站。做出来以后,发现这套东西很好用,就在2013年5月开源了。React主要用于构建UI。你可以在React里传递多种类型的参数,如声明代码,帮助你渲染出UI、也可以是静态的HTML DOM元素、也可以传递动态变量、甚至是可交互的应用组件。

2022-10-11 16:47:05 470

原创 微信小程序开发、uni-app开发、腾讯AI、百度AI

navigator跳转到自己app的一个页面,那个页面中写 微信小程序开发和uni-app开发不一样,uni-app直接写vue语法,打包后,会自己转为微信小程序的语法。//传入的对象的所有属性会添加到数据源data中,已经有了的成员,就更新,不存在就添加。pages这个数组的第一个页面:就是微信小程序的默认第一个页面,小程序的默认入口。//data中有msg:"hello",页面上的数据也会修改,响应式数据。

2022-10-10 20:11:36 1218

原创 TypeScript——泛型(函数泛型、模板类型可以是多个、泛型的错误、泛型函数变量、泛型函数类型接口、泛型类1、泛型类2、泛型约束、泛型参数的默认类型)、声明文件、Vue3.0集成ts

假如我们想使用第三方库 jQuery,一种常见的方式是在 html 中通过 标签引入 jQuery,然后就可以使用全局变量 $ 或 jQuery 了。我们可以为泛型中的类型参数指定默认类型。> 泛型(Generics)是指在定义函数、接口或类的时候,不预先指定具体的类型,而在使用的时候再指定类型的一种特性。在函数内部使用泛型变量的时候,由于事先不知道它是哪种类型,所以不能随意的操作它的属性或方法.以上泛型约束示例仅仅是函数中使用,实计上也可以使用于其它使用泛型的地方,看看下面的示例吧。

2022-09-26 16:42:03 1610

原创 TypeScript——接口和多态(接口定义函数变量类型、接口与对象、接口与数组、接口继承接口、类实现接口、泛型函数类型接口、接口与泛型、接口变量指向实现类对象、多态)

/函数类型接口}}}

2022-09-26 16:38:54 687

原创 TypeScript——类类型变量(类变量指向该类的对象、父类变量指向子类对象、类型断言、Object变量)

比如父类是"人(Person)",子类是"男孩(Boy)",因为男孩本就是人,所以可以用人指向它, 只是男孩对象被人指向后,只把男孩当人看待,不当男孩看待. 以当前示例为例,对于let person2: Person = new Boy();当父类类型变量指向间接子类对象时,该变量可以类型断言成子类的父类类型,断言成什么类,就只能当作该类的对象访问成员了。当一个父类类型变量指向子类对象时,可以通过”类型断言“ 把该变量强制转换成子类类型变量。Object是一切类的父类,所以可以指向一切对象。

2022-09-26 12:29:18 736

原创 TypeScript——类(基本概念、类和对象语法、对象和内存、this、构造函数、静态方法、 存取器、继承、super、访问权限修饰符、static、重写、里氏替换原则)

/ 类体}1. 定义类的。

2022-09-25 14:08:03 1522

原创 TypeScript——函数(函数定义类型、可选参数和默认参数、剩余参数、函数类型变量、使用接口封装函数变量类型)

};我们可以给每个参数添加类型之后再为函数本身添加返回值类型。TypeScript能够根据返回语句自动推断出返回值类型,因此我们通常省略它。

2022-09-24 14:39:43 1839

原创 TypeScript——TS简介(面试题)、运行环境、变量声明、基础类型、类型断言、初识接口

1. TypeScript,简称为TS,是JS的超级;Vue3.0就是使用TS开发出来的,并且推荐开发者使用TS进行开发;2. TS是可以直接运行的(比如使用ts-node),最终编译为纯的JS运行在任意的平台之上,是开源的;3. 始于JavaScript,归于JavaScript!2、TS的特征或理解——面试题。

2022-09-23 17:51:06 2767

原创 Vue3.0——数据仓库配置、Vue2.0 和 Vue3.0差异(面试题)、副作用函数

自定义事件绑定的时候native修饰没有了,vue3.0希望自己去触发,3.2之前在组合式API中必须引入definrEmit使用,3.2是defineEmits也可以不引入直接使用选限售股hiAPI(3.3.3)直接使用this.$emitdefineAsyncComponent 异步组件,用法就是在2.0的基础上,用这个函数处理之后的返回值。

2022-09-22 14:46:45 918

原创 Vue3.0——公共数据配置、网络配置、插件配置——use语法、路由配置

同2.0一样use函数接受一个函数或者对象(对象有install函数) 然后会调用这个传入的回调函数 给它传参app对象,以此来实现第三方插件。如果使用的是setup语法糖,getCurrentInstance就只能在中。因为v2使用公共配置时一般绑定在原型上无论是否使用都在每一个组件的this链上,这样的设计不太友好,Vue3.0中setup中没有了this,那么有些东西配置到原型链上,就没有意义了。全局守卫、独享守卫、组件守卫 逻辑不变,语法略微调整。

2022-09-21 22:42:23 1198

原创 Vue3.0——常用的Composition API(监听属性、生命周期、Teleport、属性、自定义事件、状态驱动的动态 CSS、注册组件、uspense、 isRef等)

Vue中每个组件都是独立的,每个组件都有一个属于它的生命周期,从一个组件创建、数据初始化、挂载、更新、销毁、这就是一个组件所谓的生命中周期defineEmit 3.2之前useContext 废弃了,useContext函数的返回值又{emit,attr}defineEmits 3.2之后与组件和 prop 一样,事件名提供了自动的大小写转换。如果在子组件中触发一个以 camelCase (驼峰式命名) 命名的事件,你将可以在父组件中添加一个 kebab-case (短横线分隔命名) 的监听器。

2022-09-20 23:03:56 1483

原创 Vue3.0——面试题、常用的Composition API(setup、ref函数、reactive函数、Vue3.0中的响应式原理、Vue3.0中组件的使用、计算属性 )

写在Vue3.0的setup函数内部。

2022-09-16 20:40:50 1049

空空如也

空空如也

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

TA关注的人

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