- 博客(27)
- 收藏
- 关注
原创 uniapp踩坑小伎俩记录
1. 页面路径和文件名大小写问题2. 小程序平台差异3.uniapp跨页面传值2. 全局对象传值 ( 可以使用全局对象getApp()或全局变量。});// 接受页onLoad() {// 输出: { id: 123, name: ‘Alice’ }3. 本地存储传值 ( 适用于需要跨页面、甚至跨应用会话的数据传递。3. bus传值。
2024-07-11 11:32:09
609
原创 前端下载文件(exe,zip,js等)的几种方式
注意:如果要是本地下载一些静态资源(除图片外) 资源要放在public目录文件下,不然打包后路径你会发现很多报错,下载找不到路径。jt是public下的一个文件夹, this.urlName是你要下载的文件的名字。其它文件类型下载基本都是一样的 调用后端get接口,使用blob类型。前端一般通过创建a标签下载文件。后端传的话需要调用get接口。
2023-02-23 11:25:53
2038
原创 webpack和vue3结合安装
vue3 学习网站 https://24kcs.github.io/vue3_study/chapter1/04_webpack%E6%89%93%E5%8C%85.html#%E4%B8%8B%E8%BD%BD%E4%BE%9D%E8%B5%96里面也有webpack配置打包教程最新的webpack兼容不好 这里安装webpack时要用其他版本命令语句npm install -D webpack@4.41.5 webpack-cli@3.3.10 webpack-dev-serv...
2022-03-11 11:26:28
1174
原创 vue3快速学习(vue2转vue3学习)
首先要知道的一些方法,基础api。避免看不懂vue3。1. reactive返回对象的响应式副本,实际上reactive 将解包所有深层的 refs,同时维持 ref 的响应性。个人理解:相当于把reactive里面的内容a,push到一个对象中,而且还互相相应。我称这个对象为依赖于a的副本。内容为空,后续通过 obj.count = count 这样的写法,也能将其绑定响应。const obj = reactive({ count: 0 })响应式转换是“深层”的——它影响所有...
2022-03-11 10:57:51
2037
原创 关于IE的内存回收机制 和 vue在ie上tab页关闭内存不释放问题的尝试与思考
最近接手一个有后端搭建的前端项目,去收拾烂摊子。让我来优化该页面在ie上的白屏问题首先我看代码 代码结构是keepalive + element的tab插件 + menu插件 做的一个菜单点击,tab标签弹出展示项目。首先进来将element等一些组件改成按需引入 一些iframe在离开页面时需关闭。 一些v-if等的处理后面想去解决白屏时发现 这后端keepalive的include属性做的是个假的,也就是这个后端写了个假的动态缓存组件,没有半点用(真不知道这玩意是怎么上线的)、没办法,...
2021-09-22 16:20:45
2516
2
原创 vue打包报错 ERROR in static/js/0.4403c1dd262870db3c27.js from UglifyJs TypeError: Cannot read property ‘
打包报错ERROR in static/js/0.4403c1dd262870db3c27.js from UglifyJsTypeError: Cannot read property ‘sections’ of null网上有很多种方法,比如在webpack.base.conf.js的路径种添加框架的css,js什么的,一一试过都不好使下面是重点打开你的 webpack.prod.conf.js 文件,找到 plugins 下面的new UglifyJsPlugin({ ugli
2021-05-25 16:53:40
433
原创 vue优化,解决bug: Waiting for update signal from WDS...时间过长,keep-alive包裹的navtab切换组件不断切换导致页面卡顿以及浏览器内存过高
keep-alive包裹的navtab切换组件不断切换导致页面卡顿以及浏览器内存过高当这个navtab不断切换时,js heap size就会慢慢变高。解决办法:1:查找一下setTimeout定时器有没有清除2:keep-alive缓存是否清除3:是否用了iframe (很大嫌疑)当你的页面上的iframe是直接引用而不是隐藏在组件弹出框中的话,就会造成:每次切换到这个页面,除非秒切,不然会触发webpack的dev机制,引发 Waiting for update signal from
2021-01-13 16:40:43
6967
1
原创 vue+element弹出框设置可以上下左右拉伸,移动,双击放大效果
**在网上找了很多,移到项目后总不满意,然后结合着自己改了一个。直接放注册指令代码,需要自己生成一个js文件放进去,并在main.js里面引入```javascriptVue.directive('dialogDrags', { bind(el, binding, vnode, oldVnode) { // 弹框可拉伸最小宽高 const minWidth = 400 const minHeight = 300 // 初始非全屏 let isFullS
2020-11-19 16:54:58
1549
原创 vuex模块化管理在正式项目中的运用及其注意事项
vuex一般用于中大型项目,其内容有state 存放状态 mutations state成员操作(处理数据,更改保存到state中。用法this.$store.commit ) getters 加工state成员给外界 actions 异步操作(一般用于处理请求逻辑之后将数据给mutations,用法this.$store.dispatch ) modules 模块化状态管理modules 的每个模块拥有自己的state、mutation、action、get...
2020-10-22 16:13:14
298
原创 js杂技
var ststus = "type"var texts = that.statusData[ststus];和var texts = that.statusData.ststus; //错误语句ststus是个变量。在前者还是以变量显示,但是在后者是以字符串显示。后者寻找正确语句应该是var texts = that.statusData.ty...
2020-01-09 14:57:00
157
原创 TypeScript踩坑记录
首先首先做自动编译自己运行ts文件要用 tsc命令,如 tsc xxx.ts想要自动编译:第一步 tsc --init 生成tsconfig.json 改输出目录 "outDir" : "./js"(这里你要自己建立好一个js文件夹)第二部 在vs里面任务,选择监视tsconfig.json关于经常会犯的报错(这个写前面)TypeScript 2.7引入了一个新的...
2019-10-23 17:40:06
4526
原创 vue组件——slot插槽(个人理解解释)
什么是插槽?概念:插槽,也就是slot,是组件的一块HTML模板,这块模板显示不显示、以及怎样显示由父组件来决定。核心是:显示不显示和怎样显示。插槽是一块模板,从模板种类的角度来分,其实都可以分为非插槽模板和插槽模板两大类。从模板种类的角度来分,其实都可以分为非插槽模板和插槽模板两大类。它的显示与隐藏以及怎样显示由插件自身控制。插槽模板是slot,它是一个空壳子,因为它显示与隐...
2019-09-23 16:16:54
1006
原创 websocket使用心得
websocket是一个可做于聊天方面的,它一共有4个主体方法。使用时,首先判断浏览器是否支持websocket let websocket = null; let host ="192.168.2.124:8084/tldollar/websocket/" let username = 11; // 获得当前登录人员的userName(即是唯一的ID) ...
2019-08-01 16:33:05
516
原创 可行的简略的indexedDB与websocket连用例子
inde.html<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <p>【userId】: <div><input id...
2019-08-01 16:14:32
331
原创 IndexedDB踩坑必须注意点!!!
游标查询的排序升序降序首先你要知道IDBCursor.NEXT_NO_DUPLICATE这种写法已经废弃了官网,现在是 var requestaa = index.openCursor(null,'nextunique');现在是这么写。注意!! 无论是升序降序都是根据表的主键来的!尤其是取升序降序的第一条数据,它取的是主键最小的那一条!写聊天页面时要特别注意!所有的建表(...
2019-08-01 16:07:13
2991
1
原创 IndexedDB web存储知识点
1.特点(1)键值对储存。IndexedDB 内部采用对象仓库(object store)存放数据。所有类型的数据都可以直接存入,包括 JavaScript 对象。对象仓库中,数据以"键值对"的形式保存,每一个数据记录都有对应的主键,主键是独一无二的,不能有重复,否则会抛出一个错误。(2)异步。IndexedDB 操作时不会锁死浏览器,用户依然可以进行其他操作,这与 LocalS...
2019-08-01 15:53:50
757
原创 js原型链详解
首先我们了解原型链要知道,重点在“链”。先说一下原型链的主要角色 object构造函数,实例化对象(new xxx),原型对象。把它们想成3个人,每个人手里有一把单向的锁链。object构造函数的锁是.prototype实例化对象的锁是内部指针原型对象的锁是.constructor然后这些实例化对象,构造函数,原型对象的关系就是恋爱。实例只能把铁链给原型对象(它深爱原型),...
2019-02-25 10:32:53
313
原创 nginx配置详细介绍
以后会慢慢更新 nginx的一个重要配置文件nginx.conf,打开它最重要的是server(服务器)里面,相当于一个代理服务器,可以配置多个server,但server的listen监听的端口不能一样,不然无法确认调到哪个端口。例子:http://dl.iteye.com/upload/attachment/0068/3433/43070d7d-db54-3f75-b456-ea1...
2019-02-21 14:42:06
253
原创 vue技术杂记
以后会慢慢更新如果你的语句有一条没有执行,可以在它前面加debugger来调试想要在子组件中调用父组件的方法(如:打开model弹出框后,关闭刷新表单数据)在父级中先provide出你要用的函数,再在子组件中inject注入如:父级:export default { provide(){ return { goBack:this.goBack ...
2019-02-21 14:38:14
258
原创 vue在一个函数中调用另外一个函数
如:在vue的methods中一个函数调用另外一个函数this.$options.methods.函数名字();(这样的话要注意,this的指向已经指向了这个实例而不是指向全局,所以可能会报错说bind没有函数绑定)要this指向全局实例,要在后面加.bind(this) 如:this.$options.methods.函数名.bind(this)()...
2019-02-21 14:37:17
11145
2
原创 vue跨页面传值
this.$router.push({ name: 'Login', params: {to: 'InnovateProject'}name:你要去的页面,在router里面要设置nameto:传的值(到另外一个页面接受时就只接受to)如:this.$route.params.to这就另外一个页面是接受路由跳转直接在@click后面写的话不要加thi...
2019-02-21 14:33:42
2206
原创 webpack打包流程和注意事项!打包多个js和css文件。
先写一下我的例子:const path = require('path'); //因为path是node包里的,所以我们要包path包引入进来const cleanwpPlug = require('clean-webpack-plugin'); //这里是引用那个清除的插件,注意该插件只能清除一个jsmodule.exports = { entry: {...
2019-01-16 17:57:02
3143
原创 关于ie11等ie浏览器报 SCRIPT1004兼容等问题汇总
在这类浏览器中,经常会报错,关于报 SCRIPT1004: 缺少 ';' 的问题。首先就是循环,这类问题经常出现在循环中,for of循环并不兼容ie,建议写成普通for循环。如:for(let oItemHd of oItemHds){}//应该写成for(let oItemHd=0;oItemHd<oItemHds.length;oItemHd++){ var st...
2019-01-03 15:05:55
4219
1
原创 Vue循环实现多个div盒子展示和其中button按钮等跳转路径设置
写这篇文章是因为我因为那个路径被整的头疼,话不多说上代码 <div> <div v-for="item in Arr" :key="item.id"> <p>{{item.name}}</p> <button @click="gopage&qu
2018-12-17 18:25:10
5648
2
原创 Vue配置路由和嵌套路由的爬坑
首先你要在src目录下新建一个文件夹来放你接下来要建的Vue文件如图:建立好文件夹和文件夹内的vue文件后,他会自动生成内置的一些代码(这都不重要)接下来就是要配置路由router,也就是配置index.js文件配置index.js文件首先你要引入你的文件import Privacy from '@/pages/account/Privacy' 前面是你的文...
2018-12-12 15:03:02
794
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人