- 博客(47)
- 资源 (1)
- 收藏
- 关注
原创 React Router(用法介绍)
React Router 是一个用于在 React 应用中处理路由的库。它允许你定义应用程序中的多个页面,并在 URL 改变时显示不同的内容。接下来,你可以定义你的路由。RouterLinkSwitchRouteRoute/users/:iduseParams这只是 React Router 的基本用法,实际上它还提供了许多其他功能,如嵌套路由、动态路由匹配等。嵌套路由,动态路由匹配,路由钩子
2023-12-01 11:30:44 836
原创 React Hooks(实例及详解)
React Hooks 是 React 16.8 版本引入的新特性,它们允许在函数组件中使用状态和其他 React 特性:useState,useEffect,useContext,useReducer,useCallback,useMemo,useRef,useImperativeHandle,useLayoutEffect,useDebugValue
2023-12-01 11:15:41 1390
原创 React高阶组件(Higher-Order Components, HOCs)
React 高阶组件(HOCs)是一种函数,它接受一个React组件并返回一个新的React组件,为原组件添加额外的功能。通过这种方式,开发者可以将一些通用的逻辑或行为提取出来,应用到多个组件上,提高代码的可复用性、易于测试和减少代码量。本文详细介绍了高阶组件的基本结构、使用场景和注意事项,并给出一个简单的示例来演示如何实现日志记录功能。了解并掌握高阶组件有助于提高React应用程序的开发效率和质量。
2023-11-09 18:09:03 605
原创 React 共享组件状态及其实践
React是用于构建用户界面的强大JavaScript库。然而,随着应用规模的增长,状态管理成为一个复杂的问题。本文介绍了三种在React组件间共享状态的方法:状态提升、使用useContext Hook和使用状态管理库(如MobX或Redux)。每种方法都有其适用的情况,并且可以根据项目的大小和复杂程度进行选择。通过理解和掌握这些方法,开发者可以更有效地处理状态管理问题。
2023-11-09 18:03:07 599
原创 深入了解 React 组件的生命周期
本文介绍了 React 组件的生命周期,包括各个生命周期方法的作用和使用方法。通过熟悉这些方法,您可以更好地理解和管理组件的状态和行为,使组件更加高效和可靠。
2023-11-09 17:48:51 497
原创 在 React 中选择使用 JSX 或 JavaScript
本文探讨了 JSX 和 JavaScript 在 React 中的区别,并展示了 JSX 的优点,如动态生成 HTML 内容、自定义标签和条件渲染。同时介绍了在需要的情况下如何将 JSX 转换为 JavaScript,并介绍了 React 组件生命周期的概念和使用方法。
2023-11-09 17:45:10 388
原创 React State 和 Context API:管理组件状态和共享数据的关键技术
本文介绍了 React 中两种重要的机制——State 和 Context API 的工作原理及其使用方法。State 可以存储和管理组件的状态信息,而 Context API 则可以方便地在整个应用中共享数据。掌握这两者可以让您的 React 应用更加高效和简洁。
2023-11-09 17:41:22 327
原创 React 组件和 prop:入门教程
React 是一种用于构建用户界面的 JavaScript 库。本文将为您介绍如何使用 React 创建组件以及如何利用 props 在组件之间传递数据。此外,我们还将讨论 React 中的 state 和上下文 API,并说明如何在组件之间共享数据。希望这篇文章能帮助您更好地理解和掌握 React!
2023-11-09 17:28:48 414
原创 React Hooks用法(详细注释)
React Hooks是React 16.8版本中引入的新特性,它可以帮助我们更方便地管理组件的状态和副作用。
2023-11-09 16:18:03 86
原创 新框架Nue.js以及如何搭建框架(详细介绍)
NueJS是一个非常小(2.3kb minzipped)的JavaScript库,用于构建用户界面。它是Nue工具集的核心。它就像Vue.js、React.js或Svelte,但没有钩子、效果、道具、门户、观察者、注入、暂停或其他不寻常的抽象。学习HTML、CSS和JavaScript的基础知识,就可以开始了。
2023-10-27 15:04:37 1670 1
原创 如何搭建一个react项目(详细介绍)
这些步骤是一个基本的 React 项目搭建过程。你可以在此基础上继续添加更多功能和库,例如路由、状态管理等,以满足项目的需求
2023-09-13 16:55:46 6244
原创 React的基础用法-创建组件、渲染组件、处理状态和事件
React 的基础用法包括创建组件、渲染组件、处理状态和事件等。以下是一个简单的 React 示例,演示了这些基本概念:
2023-09-13 16:34:37 436
原创 uniapp(App端)关于PDF的一系列问题
当我们不知道如何处理arrayBuffer类型的对象时,我们可以尝试转换成其他我们熟悉形式的数据例如Base64,Blob,亦或者说把arrayBuffer类型的对象缓存到本地,利用uni.getFileSystemManager()方法将ArrayBuffer转换为URL地址。可以使用XMLHttpRequest对象来替换getFileSystemManager,XMLHttpRequest对象可以用来发送HTTP请求,从而实现获取文件系统中的文件。arrayBuffer转换成Blob对象。
2023-03-01 15:03:55 3795
原创 vue-router进阶(router.beforeEach((to, from, next),router.beforeResolve( to,from,next ))等等
router.beforeEach( to,from,next ) =>{ }router.beforeResolve( to,from,next ) =>{ }router.afterEach( to,from )=>{ }
2022-10-13 17:12:22 6350
原创 如何搭建一个vue项目(完整步骤)
介绍:Vue CLI←点击此处跳转至官方文档Vue CLI是一个基于 Vue.js 进行快速开发的完整系统,提供:通过 @vue/cli 实现的交互式的项目脚手架。通过 @vue/cli + @vue/cli-service-global 实现的零配置原型开发。一个运行时依赖 (@vue/cli-service),该依赖:可升级;基于 webpack 构建,并带有合理的默认配置;可以通过项目内的配置文件进行配置;可以通过插件进行扩展。一个丰富的官方插件集合,集成了前端生态中最好的工具。
2022-04-25 01:49:17 10274
原创 关于vue数值改变进不了watch监听事件,以及vue数据改变不渲染问题。
vue渲染以及监听问题vue数值改变进不了监听以及渲染问题。解决方法举个例子vue数值改变进不了监听以及渲染问题。vue官方中说明了侦听数组的改变方法,若是使用索引去改变数组的参数则不会触发vue的watch事件以及渲染。例如↓1.通过索引直接设置数组的某个值,this.objArr[index] = newValue;2.通过索引直接设置数组中对象的某个属性,this.objArr[index].pro = newValue;3.通过修改数组的长度,this.objArr.lengt
2022-02-25 16:17:51 2799 3
原创 vue将formData转换为json格式
//this.selectionRows这个是提前写好的数据 var arr={}; var arrayes=[]; for (let i = 0; i < this.selectionRows.length; i++) { var formData = new FormData(); formData.append("partNumber",this.selectionRows[i].partNumber);..
2021-11-26 14:09:32 2435
原创 js小数点后两位相加不等于小数点后两位,而是很多位!解决方法
今天是1024还是出bug了,问题是财务开发票的时候,她说系统匹配不上。然后把他的账号拿来看了一下问题。发现代码问题,问题如下代码。 //发票匹配规则 rulesinvoice(){ console.log(this.invoiceData) if (this.invoiceData.length!==0){ this.numbers=0; for (let i = 0; i < this.invoiceData.length; i.
2021-10-24 10:25:53 532
原创 vue父组件中点击按钮,重新加载子组件弹框
首先我们要先了解一下,v-ifv-if预期:any用法:根据表达式的真假值来有条件地渲染元素。在切换时元素及它的数据绑定 / 组件被销毁并重建。如果元素是 ,将提取它的内容作为条件块。当条件变化时该指令触发过渡效果。当和 v-for 一起使用时,v-if 的优先级比 v-for 更高。详见列表渲染教程参考:vue.js官方文档这里官方文档中提到了:组件被销毁并重建,意思就是当v-if的条件为true时,创建子组件,当v-if的条件为false时,该组件会被销毁,当v-if的条件再次为t.
2021-09-24 14:39:22 1407
原创 设置input框只能输入数字或者只能输入英文
οnkeyup=“this.value=this.value.replace(/\D/g,’ ')”
2021-07-21 11:34:25 3568
原创 Thymeleaf保存迭代状态
Thymeleaf首先我们要先知道什么叫保存迭代状态当使⽤th:each时,Thymeleaf提供了⼀种⽤于跟踪迭代状态的机制:状态 变量。 <table > <tr> <td>姓名:</td> <td>性别:</td> <td>电话:</td> <td>emil:</td
2021-06-11 11:46:03 158 1
原创 FormData在网页F12中看不到输出结果
这里是代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <titl.
2021-06-08 11:06:38 2873
原创 Javascript获取input里的值
这里页面展示以下是代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> .
2021-06-04 12:55:53 4639 2
原创 jquery获取input里的值
jquery获取input里的值展示一下页面效果以下是代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" conte
2021-06-04 12:41:59 532
原创 vue设置跨域代理基础
const path = require('path')const CompressionPlugin = require('compression-webpack-plugin') // compression-webpack-plugin插件需要npm安装function resolve(dir) { return path.join(__dirname, dir)}module.exports = { lintOnSave: 'error', // 设置eslint报错时停止代码
2021-04-14 12:51:18 151
原创 router-view不显示问题
今天遇到了router-view不显示的问题在这里给大家简单的分享一下这里写目录标题关于routes 的问题关于routes 的问题这是我app.js的代码(写的一个小样式)var routes=[ { path:'/', component:{ template:` <div> <h1>首页</h1> <.
2021-04-12 10:20:38 4092
原创 xshell如何连接linux(centos7)及可能会遇到的一些问题
xshell如何连接linux-centos7我们在连接之前需要检查一些配置若没有设置可能会导致(如下)一.检查我们虚拟编辑器二.检查我们虚拟机的网络是否开启三.检查我们的VMware Virtual Ethernet Adapter for VMnet8是否开启下面我们开始连接:利用本地yum源下载并安装openssh-server服务我这里显示已经安装好了.already installed再进入ssh的配置文件去掉前面的#号退出并保存就好!
2021-01-15 17:19:09 451
原创 python生成器运用及理解
python生成器为什么要用生成器?其中一个原因就是为了节省空间内存这里举个例子def My_range1(a,b,c=1): """ 生成了列表 """ res= [] while a < b : res.append(a) a += c return resfor i in My_range1(1,10**8): print(i,end=',')以上的代码,返回的是一个列表,但是我们可以看到这里
2021-01-02 16:16:26 234 1
原创 Linux磁盘配额(详细步骤)
1.设置一个新硬盘,并且关闭selinux.Cd /etc/selinux/ #进入selinuxLs #查看selinux目录下又什么文件Vi config #编辑配置文件,并且把SELINUX=(改为)disabled2.Reboot #重启3.Fdisk /dev/sdb #创建一个主分区4.Mkfs.ext4 /dev/sdb1 #清空磁盘(注意:只有ext文件类型才支持文件配额)5.vi /etc/fstab #进入挂载目录,配置一下开机自动挂载把红.
2020-12-22 22:34:52 11133
原创 python爬虫项目(对博思平台社区话题信息进行爬取并保存)
按要求完成对博思平台社区(http://cqcvc.iflysse.com/Pages/Ask/Index.aspx)话题信息进行爬取并保存。(1)使用cookie模拟登录博思教学平台。(2)爬取博思平台社区话题【标题、悬赏、作者、回复数、发布时间】5个字段。(3)创建表名 ifly_comm_info,字段名【id,title,score,author,ansnum,pubtime】。(4)将爬取到的数据保存到数据库。这是我们收到的要求!!接下来我们创建一个账号分析一下网页这里我们可以看到我
2020-12-21 16:58:02 605
原创 Linux-[Samba ftp dhcp apache dns]五大服务器基础配置
rpm -qa|grep samba #查看samba安装包是否存在2.yum -y install samba #安装samba服务器Ps(我这里是之前安装好了的)3. setenforce 0 #修改seliux的配置文件-关闭selinuxservice iptables start4. service smb start #打开smb服务器service nmb stop5.vim /etc/samba/smb.conf # 编辑samba配置文件se.
2020-12-18 20:12:31 2205
原创 复制网上的文章及文本
如何复制网上收费的文章选中一篇要收费的文章按F12 进入控制台 点击设置勾选Disable JavaScript然后复制你想要的文本。
2020-12-16 12:40:52 1053
原创 python爬虫-多次请求的异步加载
异步加载一.特殊的异步加载二.多次请求的异步加载一.特殊的异步加载有一些网页,显示在页面上的内容要经过多次异步请求才能得到。第1个AJAX请求返回的是第2个请求的参数,第2个请求的返回内容又是第3个请求的参数,只有得到了上一个请求里面的有用信息,才能发起下一个请求。(ajax-json在我的另一篇博客里)这里介绍的是最常见、最简单的异步加载情况,但并非所有的异步加载都会向后台发送请求我们还是按照之前的来练习:训练地址(链接: http://exercise.kingname.info/exer
2020-12-15 19:00:17 1643
原创 python爬虫之异步加载
异步加载一.AJAX技术介绍二.JSON介绍三.异步GET与POST请求一.AJAX技术介绍AJAX是Asynchronous JavaScript And XML的首字母缩写,意为异步JavaScript与XML。使用AJAX技术,可以在不刷新网页的情况下更新网页数据。使用AJAX技术的网页,一般会使用HTML编写网页的框架。在打开网页的时候,首先加载的是这个框架。剩下的部分将会在框架加载完成以后再通过JavaScript从后台加载。AJAX 的一种常见用法是使用 AJAX 加载 JSON 数
2020-12-11 00:54:08 4566 1
原创 如何判断一个网页有没有使用AJAX技术呢?
如果requestType能拿到值,并且值为 XMLHttpRequest ,表示客户端的请求为异步请求,那自然是ajax请求了,反之如果为null,则是普通的请求也可以通过查看网页源代码,来判断:如果检查它的源代码,会发现源代码里面并没有网页上面显示的文字使用异步加载技术的网页,数据不在源代码中...
2020-12-10 16:53:48 2218
原创 python-Threading多线程之线程锁
Threading多线程之线程锁这里先说一下加锁的机制,其是如何实现线程保护的。这个实现的大致过程为:首先在需要同步的代码块前面加上lock.acquire()语句,表示需要先成功获取该锁,才能继续执行下面的代码,然后在需要同步的代码块后面加上lock.release()语句,表示释放该锁。所以,如果当一个线程或进程获取该锁,而且该锁没有被释放的话,那么其他的线程或进程是无法成功获取该锁的,从而也就没法执行下面的同步代码块,从而起到保护作用,直至释放该锁,其他的线程或进程才可以成功获取该锁,然后继续执行
2020-12-08 22:14:58 8850 3
原创 python之扫雷小游戏(附代码)
这是之前做的一个扫雷小游戏.代码如下(有一些bug请多见谅!)。#-*- cdoeing = utf-8 -*-#@Time : 2020-12-08#@Author : LBOcean"""对象: 棋盘: 属性:长, 宽, 雷, 盘面 方法: 生成盘面, 设置雷的个数、长、宽, 翻牌, 判断输赢"""from random import randintimport sysclass Pan: def __init__(se.
2020-12-08 21:49:57 7444 9
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人