
前端
文章平均质量分 69
html、css以及js的学习记录。
小绵杨Yancy
Trouble is a friend.
展开
-
npm语义化版本和版本运算符
一个完整的版本号,由三部分组成:主版本号(major)、次版本号(minor)、修订版本号(patch)。原创 2024-06-18 09:24:37 · 926 阅读 · 0 评论 -
jsx文件eslint报错 Parsing error: Unexpected token < eslint
最近在使用react native开发app的发现一个问题:报错详情:可以看到,这是jsx的正确写法,并没有语法错误,但是eslint还是报错,大致意思就是意外的符号,可以大概推断是eslint没有正确解析jsx语法造成的,虽然程序可以正常运行,但是对于强迫症来说,确实受不了。原创 2023-01-05 19:02:48 · 5392 阅读 · 0 评论 -
【前端开发】CSS BEM命名规范
BEM其实是块(block)、元素(element)、修饰符(modifier)的缩写,利用不同的区块,功能以及样式来给元素命名。通过bem规范来命名元素,可以使得我们对于元素的命名更加规范,见名知意,便于项目后期的维护和样式提取。这是饿了么官网的卡片组件的代码,我们来分析以下这个组件的命名。首先对于BEM中的,更高级别的抽象或组件,这里是,表示饿了么的card卡片组件。Element代表 block 的后代(或者组成部分),用于形成一个完整的 block 的整体。对于,它的Element有卡片头部、卡原创 2022-11-27 12:54:22 · 1011 阅读 · 0 评论 -
下一代Ajax技术 — Fetch的学习与使用
Fetch被称为下一代,采用来处理数据。是一种简洁明了的API,比更加简单易用。Fetch 是一个现代的概念,等同于 XMLHttpRequest。它提供了许多与 XMLHttpRequest 相同的功能,但被设计成更具可扩展性和高效性。注意,Fetch是JavaScript提供的原生API,所以是可以直接使用的。原创 2022-11-23 13:03:40 · 1580 阅读 · 0 评论 -
设备像素、css像素、设备独立像素之间的区别?
在css中,可以通过-webkit-device-pixel-ratio,webkit-min-device-pixel-ratio和-webkit-max-device-pixel-ratio进行。在不同的屏幕上(普通屏幕 vs retina屏幕),css像素所呈现的大小(物理尺寸)是一致的,不同的是1个css像素所对应的物理像素个数是不一致的。,包括了css像素,比如:css像素,只是在android 机中,css像素不叫 “css像素了”,而叫“设备独立像素”。设备像素的大小是固定的,是不可变的。原创 2022-10-26 08:00:00 · 531 阅读 · 0 评论 -
【前端】webpack5使用webpack-dev-server实现热更新和代理
【前端】webpack5的配置及基本使用。【前端】webpack5常用loader和plugin。今天我们来看一下webpack-dev-server,它是什么呢?大家有没有发现,在前面两篇博客的例子中,我们每次修改完js文件后,都需要再次打包,然后再用浏览器打开生成的html文件。但是我们在使用vue-cli开发项目时,一修改文件,就会立刻重新编译,然后页面自动发生变化,webpack-dev-server就是完成这一功能的。webpack-dev-server就是一个小型的静态文件服务器。原创 2022-09-07 08:00:00 · 3482 阅读 · 2 评论 -
【前端】webpack5常用loader和plugin
可以看到,loader和plugin非常多,并且配置起来也并不容易,所以我们每次都是直接使用别人封装好的脚手架,然后进行项目开发,例如vue-cli或者create-react-app等常用脚手架。但是了解了基本的loader和plugin作用,对于我们排除错误或者对项目的理解都有很大的帮助。腾讯TNTWeb前端团队 - 吐血整理的webpack入门知识及常用loader和plugin。原创 2022-09-06 08:00:00 · 1263 阅读 · 0 评论 -
【前端】webpack5的配置及基本使用
webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。在最原始的前端开发中,我们引入js和css等文件都是通过手动地在html中插入script和link标签来达到引用的目的,不仅繁琐,每个文件都需要单独发一次请求,而且容易发生变量冲突的问题。于是提出了JavaScript模块化的概念,依次出现了AMD、CommonJS、CMD、ES6模块化等解决方案。原创 2022-09-05 08:00:00 · 1193 阅读 · 1 评论 -
【前端】彻底搞懂HTTP协议
HTTP协议(`HyperText Transfer Protocol`,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传输协议。当你在浏览器的地址框中输入一个URL(www.baidu.com)或是单击一个超级链接时,URL就确定了要浏览的地址。浏览器通过超文本传输协议(HTTP),将Web服务器上站点的网页代码提取出来,并翻译成漂亮的网页。我们需要获取到服务器上的资源或者请求服务器的接口,都要发送请求(不一定必须是http请求)。原创 2022-09-03 08:00:00 · 725 阅读 · 0 评论 -
ImageAssitant插件 — 一件提取网页图片
当我们想要仿写一个网页时,一定会用到网页中的图片,如果一张一张地另存图片,那么就太low了!这里有一款十分nice的浏览器插件,帮助我们解决了这个问题。这里使用Edge浏览器,最新版的Edge浏览器是支持插件扩展的。搜索: 我已经安装过了,未安装过应该是显示按钮,点击获取按钮等待自动安装即可。这里以小米官网为例,提取小米官网首页的所有图片。打开小米官网():一定要等网页加载完成,这样提取图片时才能获取到网页中所有的图片。在当前网页点击右上角拓展图片,点击ImageAssitant插件。点击原创 2022-06-07 08:00:00 · 9665 阅读 · 0 评论 -
windows系统安装Nginx
目录一、Nginx二、安装Nginx一、Nginx一直使用的Apache当web服务器,Nginx属于轻量级Web服务器,同样的Web服务,它占用的存储空间及资源会更少;另外Nginx处理静态文件好,在性能和速度方面要比Apache有优势。二、安装Nginx我的电脑是windows系统。访问nginx官网:http://nginx.org/解压下载的压缩文件:nginx的配置文件(conf/nginx.config),可以看到默认使用80端口,可以自定义修改:在当前文件目录(因为没有原创 2022-05-27 10:00:00 · 549 阅读 · 0 评论 -
基于Selenium+Python的自动化测试
目录一、实验目标二、环境配置1、 下载并安装anaconda2、 使用pycharm创建工程3、 使用pip安装selenium : pip install selenium4、 配置webdriver5、 运行以下程序,可在控制台打印网页源码三、基于selenium自动登录qq邮箱并发送邮件1、 获取网页基本信息2、 使用python程序完成登录操作3、 登录邮箱后,自动发送邮件一、实验目标基于Selenium+Python的自动化测试,实现qq邮箱登录并发送邮件。二、环境配置1、 下载并安装an原创 2022-05-06 12:44:04 · 2198 阅读 · 3 评论 -
【nodejs】解决前后端跨域问题
一、问题前后端分离,特别是使用nodejs作为后端,肯定会存在跨域问题的,因为node项目运行需要占一个端口。在开发环境中,可以使用vue的跨域解决办法,即配置vue.config.json进行请求配置,实现请求代理。Vue项目实现跨域请求(无config文件夹)但是将项目上线到服务器以后,这个办法就没用了,所以得通过后端进行配置,从而实现能够跨域请求。二、方法2:设置expressvar express = require('express');var app = express();//跨原创 2022-04-09 14:05:29 · 4038 阅读 · 3 评论 -
【前端】从输入url到页面展示到底发生了什么?
目录1、输入地址(www.baidu.com)2、域名解析(DNS)3、TCP连接(三次握手)4、客户端发起http请求5、服务器响应请求6、浏览器解析html1、输入地址(www.baidu.com)当我们开始在浏览器中输入网址的时候,浏览器其实就已经在智能的匹配可能得 url 了,他会从历史记录,书签等地方,找到已经输入的字符串可能对应的 url,然后给出智能提示,让你可以补全url地址。对于 google的chrome 的浏览器,他甚至会直接从缓存中把网页展示出来,就是说,你还没有按下 en原创 2022-04-01 20:03:03 · 765 阅读 · 0 评论 -
正则表达式
什么是正则表达式?我们可能会遇到这样一个需求:从字符串 str 中提取数字部分的内容(匹配一次):其中str = "abc123def"也就是需要从str中提取出123,显然我们使用for循环遍历,并将数字存入另一个数组中,可以实现上述要求。但是学习了正则表达式以后,一行代码便能实现上述需求:var str = "abc123def";document.write(str.match(/[0-9]+/));这仅仅是正则表达式的用途之一——基于模式匹配从字符串中提取子字符串。正则表达式的用原创 2022-01-22 22:19:33 · 800 阅读 · 0 评论 -
jquery+ajax+jsonp调用百度接口查询本地疫情消息
1、需求:通过调用百度的接口,来获取本地的疫情消息,能够实现通过输入日期,显示当前输入日期的新增本土人数。2、分析:1)、找到百度接口直接百度“哈尔滨疫情”,进入详情页面。f12打开控制台,点击网络(或者network),刷新页面。找到我们需要的请求。点击预览。可以看到这条请求返回了我们需要的数据,复制改url,到时候我们本地请求该url就可以了,这里就不分析数据了,代码中有注释解释。2)、解决跨域问题跨域问题这里就不解释了,使用jquery配合jsonp实现跨域请求百度数据。跨域和原创 2021-12-09 11:10:15 · 2335 阅读 · 1 评论 -
qq不加好友实现网页在线聊天(qq在线客服)
需求再网页中添加自己的qq,方便别人联系你,但是有的时候仅仅是询问一些问题,并不需要加好友,那么此时使用qq官方的推广工具就非常方便了。官网地址:qq推广开通免费推广功能后,就可以直接通过点击网页上的超链接实现在线临时聊天了,不用加好友等繁琐的功能。实现1、登录官网,生成超链接官网地址:qq推广可以自定义组件样式、提示语(鼠标悬浮的提示语),然后复制超链接到网页即可使用2、在html页面插入超链接3、测试在浏览器中打开html页面,保证电脑上登陆了qq,注意不是客服qq,而是你自己的原创 2021-11-24 13:55:15 · 7250 阅读 · 0 评论 -
Node.js中使用exports实现方法的封装和调用 —— 模块化编程
模块化所谓模块化,就是把一个些js文件当成模块(module),我们每次使用npm install命令时,就是为项目导入需要的模块,然后引入通过import引入模块,即可使用对应的功能。例如axios,就是别人以及将原生的ajax封装到了axios.js文件中,我们只需要通过import引入就能十分方便的使用。我们自己也可以将一些常用的方法封装起来,到需要的时候直接调用即可。下面通过一个简单的绝对值函数的封装,来简单演示以下。Node.js中通过require来引入外部模块,exports来导出模块内容。原创 2021-11-23 22:48:41 · 3558 阅读 · 0 评论 -
使用wow.js让网页“动起来”
wow.js可以实现网页滑动到元素时,产生动画效果,但是目前只支持触发一次(页面不刷新的的情况下)。引入animate.css和wow.js<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.0.0/animate.min.css"/><script src="https://cdn.bootcdn.net/ajax/libs/wow/1.1.2/wow.js">原创 2021-11-19 23:41:18 · 963 阅读 · 0 评论 -
node.js在vscode中npm intsall报错:权限不足
问题今天在vccode中使用npm intsall安装依赖时,报错:大致意思就是权限不足,以往我都是用管理员打开命令行,cd到当前文件夹再安装,今天解决一下。If you believe this might be a permissions issue, please double-check thenpm ERR! permissions of the file and its containing directories, or try running解决csdn上找了几种方案,可行方案原创 2021-11-17 22:31:06 · 1973 阅读 · 1 评论 -
node.js和npm的安装与环境配置(2021最新版)
我选择的是windows64位的,你可以根据自己的实际情况选择对应的版本。2、下载完成,安装。打开安装程序接受协议选择安装位置,一会儿还要用。我选择的是:D:\Program Files\nodejs下一步,next即可不用勾选,直接next点击install,等待安装完成测试是否安装成功win+r输入cmd打开命令行,输入node,如下图显示,表示安装成功,我安装的版本是16.13.0。...原创 2021-11-09 16:49:37 · 96483 阅读 · 49 评论 -
Html5+CSS3 实现网站头部 导航栏和二级导航栏
需求利用html5和css3来做一个网站头部,以及包含二级菜单的导航栏。实现图如下:悬浮导航栏展开二级导航栏实现css代码:index.css/* css样式初始化 */* { font-family: 'Poppins', sans-serif; margin: 0; padding: 0; box-sizing: border-box; outline: none; border: none; text-decoration: non原创 2021-11-03 21:06:24 · 15202 阅读 · 5 评论 -
自适应布局-webkit-box布局实现文字内容过长自动换行,超出规定行数部分省略号隐藏
当文字内容超出div的规定宽度时,最好的解决办法是进行换行处理。当换行达到一定的行数时,我们就可以通过省略号来进行隐藏处理,达到显示大致内容的目的。这也是我在写博客系统时遇到的一个问题,在博客列表不需要将博客的内容全部展示出来,只需要展示前几句话即可。所以使用-webkit-box布局来实现。html部分:<div class="blog"> <div class="article"> 文本显示为两行,超过部分隐藏并使用省略号 修改 width 属性查看效果原创 2021-09-13 17:59:57 · 2261 阅读 · 1 评论 -
jQuery (write less, do more)
1、What is jQuery?jQuery是一个轻量级的“写的少,做的多”的JavaScript库。简化了javascript的操作,例如AJAX调用和DOM操作等……2、使用jQuery(1)、将jQuery引入:CDN引入(需要网络支持):<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>或者官网下载jquery文件到到本地引用。(离线也可以使用)官网地址:https://原创 2021-10-24 13:00:32 · 823 阅读 · 0 评论