- 博客(57)
- 资源 (2)
- 问答 (2)
- 收藏
- 关注
原创 创建第一个AS项目
项目创建后,右下角会看到这个进程,这是在下载构建项目所需的Gradle,但是这个下载会非常非常慢,甚至可能无法下载,我们需要修改下载源,改为国内镜像地址。这些依赖会下载到C:\Users\用户.gradle下,android studio中gradle的默认路径设置也是这个,如果不想放在C盘,按照步骤修改。Minimum SDK:项目支持的最小SDK,通俗说就是最小Android版本。方法二:将方法一中的路径复制到浏览器下载zip包,下载后不要解压,然后修改。Language:开发语言,选择java。
2024-05-30 15:20:20
570
原创 安装Android Studio
百度网盘: https://pan.baidu.com/s/1YuO_wXL3EA6vYwP2srqUDQ?pwd=773x 提取码: 773x。官网下载: https://developer.android.google.cn/studio/gradle默认位置在 C:\Users\用户名.gradle。如果你不想把sdk放在c盘,可以按照下面修改sdk位置。左侧的licenses都选上Accept。这一步要比较久的时间,耐心等待。
2024-05-30 11:43:06
883
1
原创 Linux中安装Node
就是说 npm 出于安全考虑不支持以 root 用户运行,即使你用 root 用户身份运行了,npm 会自动转成一个叫 nobody的用户来运行,而这个用户几乎没有任何权限。要么加 --unsafe-perm 参数,这样就不会切换到 nobody 上,运行时是哪个用户就是哪个用户,即使是 root。安装好 node 后,执行 node -v 时可能报这个错,一般是因为node版本过高,可尝试降低 node 版本。下载安装包,服务器环境对node版本有要求,有时node版本太新会导致失败,
2023-08-05 18:11:01
1210
原创 Linux 中使用 verdaccio 搭建私有npm 服务器
如果需要通过它删除整个库包,那么需要手动将当前库包已发布所有版本手动配置到 package.json 进行删除,每配置一个版本执行一下该命令进行移除,一直到所有版本号清空,Packages 里面就不会存在这个库包。删除库包之后,24小时之内 无法再次上传同名的库包到 npm,需要更改包名,或者等过了 24小时之后 在上传。直接强制删除指定包的指定版本,不需要 cd 进入包文件夹内,随处可以执行。直接强制删除指定包,不需要 cd 进入包文件夹内,随处可以执行。需要 cd 进入包文件夹内,再执行该命令。
2023-08-04 17:32:32
1489
原创 JS预编译
通篇检查语法错误预编译开始解释一行,执行一行 function test(a) { console.log(a); var a = 1; console.log(a); function a() {} console.log(a) var b = function(){} console.log(b); function d() {} } test(2);打印结果函数执行步骤在函数执行之前,先会整理出AO(Activation Obje.
2021-12-09 23:42:44
389
1
原创 Vue-cli4.x中配置Autoprefixer
Vue CLI 内部使用了 PostCSS所以只需要修改.postcssrc.js和.browserslistrc文件即可.postcssrc.jsmodule.exports = { plugins: { "autoprefixer": {} }};.browserslistrc> 1%last 2 versionsnot dead测试的时候可以把.browserslistrc改成最后20个版本,否则可能看不到效果> 1%last 20 version
2021-12-07 11:35:49
1084
原创 vue-cli4中Stylelint配置
文章目录安装配置StylelintWebstorm中stylelint自动修复设置快捷键安装配置Stylelintnpm i stylelint stylelint-config-standard stylelint-order stylelint-config-rational-order stylelint-declaration-block-no-ignored-properties -Dpackage.json"stylelint": "^13.8.0","stylelint-confi
2021-11-15 17:05:03
1616
原创 微信JS-SDK的使用
这里写目录标题前台方法定义ios使用JS-SDK报错:config:invalid signature使用JS-SDK后台WechatService.javaWeChatMsg.javaCache.javaCacheService .java前台// 安装js-sdk 本文中使用的版本是 1.6.0npm i weixin-js-sdk,方法定义ios使用JS-SDK报错:config:invalid signaturevue 单页应用中 ,使用 history 模式时,在 ios 中,使用J
2021-07-01 18:00:07
691
原创 换行导致无法模拟SQL注入
在使用 Mybatis 时,取值时,应尽量使用 # 取值,因为当使用 $ 取值时,会出现SQL注入的风险。比如下面的登录校验语句,如果用户名输入 '' or 1=1 #,可以实现SQL注入 <select id="getUserByNameAndPwd" resultType="com.cry.mall.entity.User"> select * from c_user where user_name = ${userName} and
2021-05-16 21:43:57
314
原创 JS事件循环机制
let t0 = Date.now(); let t1 = 0; let t2 = 0; let t3 = 0; let t4 = 0; f1(); f2(); function timerFn() { console.log('bbbbb'); t3 = Date.now(); console.log('timerFn:', (t3 - t0) / 1000) } function f1() { setTimeout(timerFn..
2021-03-04 14:29:42
264
1
原创 如何计算每月个税
级数累计预扣预缴应纳税所得额预扣税率速算扣除数1不超过36000元的部分3%02超过36000元至144000元的部分10%25203超过144000元至300000元的部分20%169204超过300000元至420000元的部分25%319205超过420000元至660000元的部分30%529206超过660000元至960000元的部分35%859207超过960000元的部分45%181920...
2020-12-07 17:55:04
5089
1
原创 Vue中将px自动转化为rem
安装所需插件npm i amfe-flexible -Snpm i postcss-plugin-px2rem -Dmain.j中引入import 'amfe-flexible';对 postcss-plugin-px2rem 插件自定义配置vue.config.js 中添加如下配置module.exports = { css: { loaderOptions: { postcss: { plugins: [ requ.
2020-12-03 16:10:28
1365
原创 React组件间的Context传值
在一个典型的 React 应用中,数据是通过 props 属性自上而下(由父及子)进行传递的,实现如下import React, { Component } from 'react';function ThemeBtn(props) { return ( <div>{props.theme.name}</div> )}function ToolBar(props) { return <ThemeBtn {...props}></The
2020-09-19 20:02:52
629
原创 使React支持装饰器语法
先看非装饰器写法下面这种链式调用写起来很麻烦,调用层级多的话,代码阅读性也会很差,ES7的装饰器语法可以解决这个问题import React from 'react';const CompOne = Comp => { return props => { return <Comp {...props} attrOne='comp1'></Comp> }}const CompTwo = Comp => { return props
2020-09-18 11:07:38
656
原创 React高阶组件
高阶组件本质上是一个函数,这个函数一定是接收一个组件,加工后,返回一个新组件上代码Test.jsimport React, { Component } from 'react';class Test extends Component { constructor(props) { super(props); this.state = {}; } render() { return ( <div> <p>{t.
2020-09-17 11:29:08
208
原创 React组件渲染优化
CartList.jsimport React, { Component, PureComponent } from 'react';class CartList extends Component { constructor(props) { super(props); this.state = { goods: [] } } componentDidMount() { setInter
2020-09-13 14:21:29
321
原创 antd按需加载
非按需加载// App.jsimport { Button } from 'antd';// App.css@import '~antd/dist/antd.css';按需加载去掉 App.css 中的 @import ‘~antd/dist/antd.css’;安装依赖yarn add babel-plugin-import react-app-rewired customize-cra在项目根目录创建一个 config-overrides.js 用于修改默认配置。类似于vu
2020-09-11 17:58:11
464
原创 移动端呼出键盘时遮挡住输入框
<input type="text" @click="scrollEle" v-model="value">scrollEle (e) { let ele = e.target window.onresize = function () { ele.scrollIntoView({ behavior: 'smooth' }); }}scrollIntoView 说明还看到有些人说scrollIntoViewIfNeeded也行,但官网中有段说明...
2020-09-09 10:50:37
189
原创 Vant中List组件immediate-check=false无效的问题
使用vant中的List组件时,会有这样的场景初始化时想自己触发列表查询,而不想触发 List 组件自带的 load 方法,这时可以设置 immediate-check=false,如下代码,但是这种方式会在下面的场景中出现问题 <van-list ref="vanlist" v-model="loading" :finished="finished" finished-text="已显示全部周报" :error.sync="error"
2020-09-04 23:35:10
4270
2
原创 VScode设置jsx语法自动补全
1.打开VScode2.文件>首选项>设置>点击图中下图箭头处3.加上以下配置项就可以了 "emmet.includeLanguages": { "javascript": "javascriptreact" }
2020-09-03 21:49:48
1296
原创 npm相关设置
修改全局安装路径先创建好node_global 和 node_cache 文件夹,并且在环境变量中配上 D:\node\node_globalnpm config set prefix "D:\node\node_global"npm config set cache "D:\node\node_cache"修改版本号前缀npm config set save-exact truecnpm安装好之后也要修改上述配置cnpm config set save-exact truecnpm con
2020-09-02 23:43:03
211
原创 vue-cli4 打包和加载优化
vue在首次加载时,会出现加载很慢的情况,可以通过优化第三方库的引入方式来优化打包后的文件,本文提供了两种引入方式,对两种方式进行了对比结论:npm使用方便,但加载速度稍慢,对于小的库使用npm。CDN+本地使用麻烦些,但加载速度快,对于一些很大的库可以使用,但要注意库的加载顺序问题通过npm// 安装npm install echarts -S// 使用import echarts from 'echarts';npm run build 后打包文件中chunk-vendors..
2020-08-21 10:55:37
1023
原创 修改npm install时的版本号前缀
运行 npm install 命令时,将按照 package.json 安装指定版本的依赖包。但如果我们不想指定依赖包的确切版本的时候,就可以使用前缀符号 ^ 或 ~ 指定版本的范围。^:比如^1.2.5,代表版本范围1.*.*~:比如~1.2.5,代表版本范围1.2.*npm 在使用 --save 更新 package.json 时,默认使用前缀 ^。修改方法如下:默认使用前缀~:npm config set save-prefix ~不使用前缀,保存确切版本 :npm config set s
2020-08-04 14:53:24
2181
原创 Java中实时读取yaml文件
引入snakeyaml<dependency> <groupId>org.yaml</groupId> <artifactId>snakeyaml</artifactId> <version>1.23</version></dependency>application.ymlspring: profiles: #环境 active:
2020-07-30 17:32:31
6330
2
原创 封装axios
import axios from 'axios';import vMessage from '@/components/messageTips';import qs from 'qs';import router from '@/router';const service = axios.create({ // 请求超时时间 // timeout: 3000});// 解决跨域时的OPTION请求service.defaults.headers['Content-Type'] =
2020-07-17 23:09:29
183
原创 overscroll-behavior的使用及局限性
背景:滚动购物车悬浮框时,底层的页面也会跟着滚动,非常影响用户体验此时需要在设置了overflow的元素上使用overscroll-behavioroverscroll-behavior: contain;使用后效果:但overscroll-behavior也存在局限,只能在悬浮框存在滚动条时阻止底层页面滚动,当悬浮框内容较少,不出现滚动条,这时就无法阻止滚动了,如下图...
2020-07-15 16:42:00
2423
1
原创 Vue过渡组件transition淡入
<transition name="fade"> <router-view v-if="isShow"></router-view></transition>一定要在mounted中改变isShow,在created中无效mounted () { this.isShow = true;}, .fade-enter-active, .fade-leave-active { transition: opacity 1s; }
2020-07-06 23:51:09
394
原创 7zip压缩时过滤文件夹
创建一个.bat文件@echo off::设置7z的命令行程序路径set zip7=D:\7-Zip\7z.exe::设置压缩包保存路径set Save=F:\zippack::当天日期,备份文件名set curdate=%date:~0,4%-%date:~5,2%-%date:~8,2%::设置要打包压缩的文件夹set www=F:\AsiaInfo_code\DSWG\ump-csdns-vue ::过滤多个文件夹 -xr!.svn 过滤.svn文件夹"%zip7%" a -t
2020-06-30 11:04:42
1165
原创 Linux下以jar包部署SpringBoot
部署将jar包放到/usr/java目录下启动这种方式启动后,不能ctrl+c结束,否则服务也会跟着停止java -jar cry-mall-backend.jar改成:nohup java -jar cry-mall-backend.jar &停止根据端口号查进程id,再根据pid kill进程9095是application.properties中自定义的服务端口号netstat -lnp|grep 909532528就是进程idkill -9 32528脚本
2020-06-28 10:11:27
254
原创 IDEA中xml文件中的sql语句格式化配置及后续问题
格式化设置对于xml文件中的sql语句,无法直接将其格式化,通过以下配置方可将图中标记处设置为对应的数据库,让idea识别你的sql,然后ctrl+alt+L格式化即可后续设置此时可能会报Unable to resolve table,这是因为没有在idea中配置具体的库,导致找不到表。我不习惯在idea中使用数据库操作,这里采用屏蔽错误而非解决错误的方式。顺便把黄色的背景去除,两者都改为不选中即可此时黄色背景没了,但是会加上一层绿色背景,继续修改同样,去掉勾选即可,改完收工!
2020-06-26 22:39:22
9477
2
原创 Vue重新加载被keep-alive的组件
一个页面由3个组件构成,现只要刷新C组件,且C组件已经被keep-alive缓存思路:先把C组件从keep-alive中去除,记录下当前页面的路径和缓存组件的名称(方便重新加载后使用),再路由到一个空白页面Refresh.vue// 从keep-alive中去除this.$store.commit('removeKeepAlivePage', '移除组件缓存');// 转到空白页this.$router.replace('/refresh');在Refresh.vue初始化时直接路由到之前记.
2020-06-22 15:24:59
2508
原创 搭建vue框架(二):项目配置
项目配置使WebStorm识别路径别名安装ElementUI安装babel禁用ESLint配置ESLint规则使WebStorm识别路径别名使用WebStorm时,别名@符号无法识别,ctrl+鼠标左键无法跳转解决方法安装ElementUInpm i element-ui -Smain.js中使用import ElementUI from 'element-ui'import 'element-ui/lib/theme-chalk/index.css'; // 默认主题// impo
2020-05-28 20:45:16
234
原创 深入学习循环中的let
首先,看这个经典for循环 var arr = [] for (var i = 0; i < 5; i++) { arr[i] = function () { console.log(i) } } arr[3](); // 打印结果:5因为var声明的变量,会被提升,上面的代码等价于下面的代码,变量i在循环结束后被赋值为5 var arr = [] var i for (i = 0; i < 5; i++) { arr[i]
2020-05-16 02:46:03
478
原创 搭建vue框架(一):创建项目
搭建vue框架安装vue-cli创建项目选择配置安装vue-clinpm install -g @vue/cli创建项目vue create vue-demo选择配置Please pick a preset: Manually select features --选择Manually Check the features needed for your project 选择 Babel, Router, Vuex, CSS Pre-processors, LinterUse his
2020-05-13 10:54:10
265
原创 分布式环境搭建(四):安装mysql
安装mysql下载镜像查看下载的镜像创建mysql实例并启动查看docker容器配置mysql重启mysql进入mysql 容器连接数据库修改mysql密码下载镜像sudo docker pull mysql:5.7查看下载的镜像sudo docker images创建mysql实例并启动sudo docker run -p 3306:3306 --name mysql \-...
2020-04-27 23:36:37
292
原创 分布式环境搭建(三):安装docker
安装docker1.卸载老版本dockersudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ ...
2020-04-13 00:54:35
160
关于tcp四次挥手确认号没有加一的疑问
2023-08-05
springboot加上项目路径后 如何设置默认首页
2019-01-26
angularjs国际化$translate.instant()方法不生效
2018-12-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人