前端
迷失的羔羊over
分享,是最好的学习
展开
-
nest EntityMetadataNotFoundError
nestjs EntityMetadataNotFound原创 2023-02-08 17:27:38 · 845 阅读 · 0 评论 -
antd DatePicker 只能选择一个月的数据
antd 选择数据原创 2023-02-02 18:38:33 · 651 阅读 · 0 评论 -
npm 发布新包后无法下载最新版
npm 上传包后无法下载最新版原创 2022-10-14 09:36:24 · 1430 阅读 · 0 评论 -
taro Input 聚焦两次
taro focus 多次弹框原创 2022-09-28 10:58:31 · 417 阅读 · 0 评论 -
npm 发布私有包遇见 402 Payment Required
402 Payment Required - PUT https://registry.npmjs.org/ - You must sign up for private packages原创 2022-08-29 15:25:54 · 2517 阅读 · 0 评论 -
Can‘t resolve ‘./api‘ in ‘E:\component\tree\src‘
未添加extensions原创 2022-08-09 16:29:26 · 478 阅读 · 0 评论 -
antd RangePicker 清空数据后 异常弹起
ant 时间选择器 2.X异常弹起原创 2022-07-26 15:11:36 · 1129 阅读 · 0 评论 -
webapck 5 背景图无法正常加载
因为我之前用的webpack 4,但是新安装的用的webpack5,然后我图片还是按照老一套的进行配置的,图片使用的url-loader,然后背景图片就无法加载了,最终通过看帖子和文档才发现,新版本的需要进行特殊设置或者可以使用最新的所以如果继续使用url-loader { test: /\.(png|jpg|gif)$/i, use: [ { loader: 'url-loader', o原创 2022-01-11 09:32:38 · 305 阅读 · 0 评论 -
redux文件结构优化
因为公司的redux结构不是太分明,因此研究了下redux的文件结构首先我们对reducer功能进行分离,这样更利于后期维护。// clearGoodsReducer.jsimport constants from "../constants";const { GOODS_CLEAR } = constantsexport const clear = () => ({ type: GOODS_CLEAR})export const reducer = (state, action原创 2021-12-29 17:48:41 · 485 阅读 · 0 评论 -
使用ftp-deploy进行自动化发布
最近准备整个自动化发布,发现了react架构中可以直接使用ftp-deploy,于是开搞首先 安装依赖npm install ftp-deploy然后在项目build目录下新建ftp-deploy.jsconst FtpDeploy = require('ftp-deploy')const ftpServ = new FtpDeploy()let config = { user: username, // 服务器登录账号 password: password, // 服务器密码原创 2021-12-09 15:52:47 · 1425 阅读 · 0 评论 -
antdesign-mobile 图片选择器ImagePicker反写
今天遇见一个问题,是把base64数据重新反写倒ImagePicker中,稍微研究了一下首先需要先把base64进行转换。// base64 to fileconst dataURLtoFile = dataurl => { let binary = atob(dataurl.split(',')[1] let mime = dataurl.split(',')[0].match(/:(.*?);/[1]) let array = [] for(let i = 0; i < b原创 2021-11-19 18:11:39 · 608 阅读 · 0 评论 -
react List点击父节点绑定点击事件
今天我在做一个List的点击选择的时候,我发现平常我都是直接把List中的每一个Item都会进行点击事件绑定,这样性能似乎不太好,我完全可以在父节点上进行绑定。<List onclick={e => fun(e.target.offesetParent.parentNode.id)}> arr.map((item, index) => ( <div id={index} key={String(index)}> {item.data} </div&原创 2021-09-01 17:52:09 · 516 阅读 · 0 评论 -
Taro 下载图片到手机
最近需要做一个微信下载图片到手机的需求,因为涉及到微信的照片权限,因此做个记录// 鉴权操作 判断是否有保存到相册的权限// 有就直接下载 没有就弹窗提示给权限downImg() { Taro.getSetting({ success: res => { if(!res.authSetting['scope.writePhotosAlbum']) { Taro.authorize({ scope: 'scope.writePhotosAlbum', suc原创 2021-08-12 10:51:00 · 803 阅读 · 0 评论 -
vue 多页面打包配置
因为我们公司的项目是多页面应用,不同于传统单页面应用,一个包就可以了。我们必须要分模块打包,因此特意研究了下webpack,然后整理了一下多页面打包的逻辑。1.首先,用vue-cli搭好基本的项目结构。安装vue-clinpm install --global vue-cli然后用测试下vue -V 然后生成项目vue init webpack hndlBuild然后这是生成的项目结构接下来我们对这个结构进行下调整2. 项目结构调整由于每个功能的路由也是单独的,因此我们需要原创 2021-05-24 15:58:48 · 1636 阅读 · 0 评论 -
Vue 数据可视化大屏适配
最近手里有个需求,需要做大屏适配,原本在本地展示正常的页面,放在大屏上展示就无法满屏了,在网上搜集了一点资料最终自己总结了下首先在mounted生命周期中,监听window的变化window.addEventListener('resize', () => { console.log('resize') this.resize()})然后在methods中增加resize方法resize() { // 记录开发时候的尺寸 const width = 1550 ,h原创 2021-05-15 17:44:32 · 2733 阅读 · 0 评论 -
Echarts 折线图 渐变区域
series: [ { name: "农村", type: "line", data: [20,10,20,10,20], symbol: "none", // 去掉折现图上的圆点 areaStyle: { // 折线下区域样式 color : new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, color: "rgba(0, 101, 203,1)" }, {.原创 2021-04-27 10:06:44 · 250 阅读 · 0 评论 -
微信浏览器音乐不自动播放
在进行微信公众号开发的时候,发现在微信公众号中直接调用audio.play()会报错,Uncaught (in promise) DOMException,在了解过后发现时因为浏览器本身的原因,但是浏览器也提供了解决方案只需要通过var audio = doucument.getElementById('id');audio.load()var playPromise = audio.play()if(playPromise !== undefined) { playPromise.then(f原创 2021-02-04 17:19:34 · 448 阅读 · 0 评论 -
eggjs session传递不成功
最近自己写node后台的时候遇见一个问题,在egg框架中,跨域参数设置成config.cors = { origin: 'http://localhost:3000', allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH,OPTIONS' };无法进行session传递,登录接口获取session后并没存储起来于是乎发现需要允许cookie跨域config.cors = { origin: 'http://localhost:3000',原创 2021-01-26 15:06:31 · 775 阅读 · 1 评论 -
vue 使用element-ui input输入框输入值不变
同事在使用el-input组件时,在v-model绑定对象的时候,发现输入不生效<el-input v-model="model.name" placeholder="请输入内容"></el-input>data() { return { model: {} }, methods: { getData() { model.name = 'zs'; } }}后来我检查发现是由于在初始化时并未设置name属性,在设置该参数后无法监听参数的改变<原创 2021-01-15 09:42:53 · 3502 阅读 · 0 评论 -
echart图标渐变色
渐变色调用echarts内部对象{ color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ { offset: 0, color: '#41c469' }, { offset: 1, color: '#ffffff' } }])}原创 2021-01-15 09:10:55 · 203 阅读 · 0 评论 -
js 深拷贝
JS的深拷贝由于基本数据类型一般存储在栈中,而引用类型栈中只存储了一个引用,真正的内容存储在堆中比如我们对一个基本类型进行赋值var a = 1var b = aa = 3console.log(a) //3console.log(b) //1我们发现b并未因为a的改变而被改变而对一个引用类型进行赋值时var a ={ name: 'zs', age: 33,}var b = ab.age = 35console.log(a.age) // 35console.log(b原创 2020-12-21 13:39:15 · 101 阅读 · 0 评论 -
前端 css 模块居中
通过父盒子flex布局father-box { display: flex; align-items: center; justify-content: center;}通过子盒子margin和transformbox { margin-top: 50%; margin-left: 50%; transform: translateX(-50%) translateY(-50%);}通过子盒子绝对定位box { width: 100px; height: 100.原创 2020-12-16 16:28:12 · 433 阅读 · 0 评论 -
echart 折线图点击区域获取对应参数
今天有个新需求,需要点击某片区域获取对应参数,但是发现echart折线图必须点到点上面才可以,于是查阅了几篇博客,总算解决了,解决方法如下:首先需要在option的xAxis中增加triggerEvent: true然后调用echart.setOption(optionData)生成图形后新增点击事件chart.getZr().on('click', function(params) { var pointInPixel = [params.offsetX, params.offsetY]原创 2020-12-10 10:22:02 · 2728 阅读 · 0 评论 -
CocosCreator笔记
Cocos creator声音控制增加声音 先在全局增加一个节点Node 再在script中创建一个sound脚本 集中控制声音 再通过对脚本进行挂载 然后脚本可以通过传入参数进行判断播放什么声音全局对象定义对于全局需要使用的对象,类似商商城,人物信息等,可以通过window全局对象进行挂载,如window.g_login通过延迟调用来实现在别的js中调用该js然后再node中把js挂载 在把挂载的node拖到需要调用的js中 properties: { canvas: requir原创 2020-11-02 15:11:58 · 1593 阅读 · 0 评论 -
webpack 笔记
webpackurl-loader小图片可以通过url-loader转换成base64文件监听在修改页面后要立马刷新,而不是手动去构建,可以通过文件监听来完成。启动webpack命令时,带上 --watch参数在webpack.config.js 中设置watch: true缺点: 需要手动刷新原理是 : 轮询判断文件的最后编辑时间是否变化某个文件发生了变化,并不会立刻告诉监听者,而是先缓存起来,等aggregateTimeoutmodule.export = { // 是否监听原创 2020-11-02 15:10:14 · 288 阅读 · 0 评论 -
小程序笔记
小程序小程序点击事件bindtap 会穿透catchtap 不会穿透函数中this会指向函数本身需要给事件处理函数指定参数 只能通过dataset来指定 <button bindtap="hello" data-say="hello">点击</button>然后在js中e.target.dataset.say小程序无法实现数据的双向绑定可以调用this,setData({ name: value}) // 直接赋值无法实现通知界面做出变化 所以不使用t原创 2020-11-02 15:03:57 · 161 阅读 · 0 评论 -
nodejs笔记
nodejsexpress框架通过let app = express()app .get(’/user/add’, (res, req) => {})app .post(api,fun)还可以创建router文件router.get(’/user/login’,fun())let router = express.Router()router.get('/add',(req, res, next) => { let {token} = req.query if原创 2020-11-02 15:00:58 · 842 阅读 · 0 评论 -
react引入Ant Design
需要先安装@zeit/next-css 不然不能识别css文件然后根目录下创建next.config.js进行配置const withCss = require('@zeit/next-css')if(typeof require !== 'undefined'){ require.extensions['.css']=file=>{}}module.exports = withCss({})再安装antdnpm i --s antd再安装babel-plugin-im原创 2020-11-02 14:58:00 · 445 阅读 · 0 评论 -
egg.js 解决跨域
egg-cors首先 安装egg-corsnpm i -s egg-cors配置config/plugin.jsexports.cors: { enable: true, package: 'egg-cors'}配置config.default.js该文件主要设置允许什么域名和请求方式进行跨域访问config.security = { csrf: { enable: false }, domainWhiteList: ['*']};config.cors = { or原创 2020-09-02 17:46:18 · 215 阅读 · 0 评论 -
Vue实现(三)
Vue中,我们访问的数据都是直接通过App.dataName,而不是App.data.dataName,因此我们需要对参数进行代理// 对data 进行代理function agency(vm) { let keys = Object.keys( vm.$data ) for( let i = 0; i < keys.length; i++ ) { let key = keys[i] Object.defineProperty(vm, key, {原创 2020-06-20 15:01:25 · 181 阅读 · 0 评论 -
button绑定onclick无效
今天我遇见一个问题,在测试onclick和addEventListener(‘click’,fn)是否生效的时候,发现onclick的方法一直无法触发,我以为是不能同时生效 box.addEventListener( 'click', () => { console.log(1)})<button type="submit" id="box" οnclick="click()">321312</button>function click() { console原创 2020-06-11 17:10:57 · 2646 阅读 · 0 评论 -
vue实现(一)- 数据结构实现
vue原理解析(一)最近对Vue的原理进行学习,并对其部分原理进行模拟。通过学习,我发现Vue在html的使用中,一共由三个部分组成:M - V - VM,和原始的MVC框架的不同,VUE把controller层转换成ViewModel-连接Model和View,“桥”。我在学习的过程中,模拟了VUE的构建结构,希望通过我的分析,可以让我们在后面对VUE源码的解析更加的通俗易懂。vue代码结构分析我们在HTML中引入框架,通过JS引入vue.js<script type="text/javas原创 2020-05-25 11:20:48 · 2268 阅读 · 0 评论 -
前端文件文件下载简化
最近需要做文件的上传于下载,本想通过axios调接口来下载,后面发现前辈的一个更简单的方法,直接通过链接来下载,给大家分享一下/**config.apiUrl api地址* '/web/service/publish/file/downloadFile' 下载接口*/const url = config.apiUrl + '/web/service/publish/file/downloadFile?id=' + fileID + '&fileName=' + fileNamewin原创 2020-05-21 14:58:49 · 131 阅读 · 0 评论 -
elementUi upload问题汇总
使用elementUi upload中遇见的问题在使用upload组件时,我发现很难去使用自己的接口去往后台传送数据,刚开始的时候是由于第一次做上传组件,因为tooken没有修改无法访问,对数据的封装不熟悉,后来没有改请求头的格式,导致后台无法识别数据对问题的解决方法进行汇总修改请求头在uoload组件中 添加 :headers = 'headers然后对headers进行定义 h...原创 2020-04-29 10:53:29 · 1061 阅读 · 0 评论 -
文字超过两行省略
今天遇见一个问题就是要对文字超过两行进行省略,并进行弹窗换行代码 overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: ...原创 2019-12-31 10:49:13 · 422 阅读 · 1 评论 -
正则表达式
正则表达式最近刚学习了JS中使用正则表达式,记录下学习到的笔记如何初始化正则表达式let reg = new RegExp(’\w{3}’,‘gi’) //g代表全局 i代表忽略大小写 一般用第二种方法let reg2 = /\w{3}/gi可以通过 console.log(reg.test(‘aaaa’)) 返回值的布尔值来判断是否符合正则正则表达式中的部分字符以及含义\d ......原创 2019-12-25 16:11:45 · 165 阅读 · 0 评论