vue 进入页面与离开页面触发事件

1.切换进入当前路由之前的钩子函数 beforeRouteEnter

2.离开当前路由之前的钩子函数 beforeRouteLeave

  from:https://www.cnblogs.com/gqx-html/p/11233014.html

龙生   08 Dec 2020
View Details

移动端:div在手机页面上随意拖动/拖拽

为了兼容PC和移动端,想出了以下办法: 拖动时候用到的三个事件: mousedown 、 mousemove 、 mouseup 在移动端都不起任何作用。毕竟移动端是没有鼠标的,查资料后发现,在移动端与之相对应的分别是: touchstart 、 touchmove 、 touchend 事件。还有一点要注意的是在PC端获取当前鼠标的坐标是: event.clientX 和 event.clientY ,在移动端获取坐标位置则是: event.touches[0].clientX 和 event.touches[0].clientY 。下面就来说说怎么实现这个效果吧,先看一下效果: PC端 : 移动端 : 先来分析一个拖动的流程,以PC端为例,首先是鼠标按下( mousedown 事件),然后移动( mousemove 事件),最后释放鼠标( mouseup 事件),首先要设置一个变量记录鼠标是否按下,在鼠标按下的时候,我们做一个标记,然后需要记录一下鼠标当前的坐标,还有这个div当前的偏移量,当鼠标开始移动的时候,记录下鼠标当前的坐标,用鼠标当前的坐标减去鼠标按下时的坐标再加上鼠标按下时div的偏移量就是现在div距离父辈元素的距离,当鼠标释放的时候将标记改为鼠标已经释放。下面来看一下代码:

然后在将事件加入到这个div中即可,下面再来看一个在移动端需要做些什么,首先是事件不同,只需要在添加移动端的 touchatart 、 touchmove 、 touchend 就可以了,还有一个不同的时移动端获取坐标是 event.touches[0].clientX 和 event.touches[0].clientY ,这也很简单,只要加上判断就可以了,如果是PC端就使用event,如果是移动端就使用 event.touches :

还有一点要注意,在移动端拖动div的时候移动端的页面会自动产生滑动效果,所以还需要在 touchmove 的是给页面添加一个阻止默认事件的函数。 下面是整个代码,可以在Chrome下模拟移动端测试,点击这里查看:

  from:https://www.cnblogs.com/joyco773/p/6519668.html

龙生   08 Dec 2020
View Details

更换安卓模拟器路径

修改系统变量 变量名:ANDROID_SDK_HOME 变量值:存放avd的路径,如:D:\AVD 在Android Studio中运行模拟器时,提示Error: Not enough disk space to run AVD '….'. Exiting。是说安装模拟的磁盘空间不足,导致无法运行模拟器。 Android Studio 安装之后,默认的模拟器会安装在C盘中,可以打开模拟器管理界面,右键查看(Show on disk)模拟器安装的目录。如下图: 我的模拟器安装路径为: C:\Users\Administrator\.android\avd, 其中的avd文件夹就是用来存放模拟器镜像文件的。   第一步:需要将Pixel_API_27.avd的文件夹移出C盘,放入空间足够的磁盘中。   第二步:就是要修改Pixel_API_27.ini(在此就称为模拟器配置文件吧,我也是新手不太懂)文件中模拟器的路径。 然后重新运行模拟器,没有问题应该可以运行起来。   from:https://www.cnblogs.com/wang2804355025/p/13155556.html

龙生   05 Dec 2020
View Details

MySql连接数据库

C#中连接MySql数据库,需要配置MySql.Data。   1.配置 项目- 管理NuGet程序包 – 安装MySql.Data。 2.示例代码

  3.注意事项 运行上述代码,如果出现异常 “IOException: Unable to read data from the transport connection: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败”。首先,确认数据库是否允许远程连接;其次,防火墙是否打开;最后,连接字符串是否正确,是否支持SSL。 出现异常“The host localhost does not support SSL connections.”说明不支持SSL,需要在连接字符串里添加SslMode = "none"。   from:https://blog.csdn.net/liyazhen2011/article/details/82845279

龙生   04 Dec 2020
View Details

Weex自定义Module

面试之家只是为了学习和交流使用Weex,题库等内容不可用于商业项目 在Weex开发中,使用自定义Module的方式,来扩展Weex的能力,官方教程在这里,这里我以自定义分享模块来举例 第一步 先创建一个继承与NSObject的基类UM_WeexModule,然后引入头文件#import <WeexSDK.h>,并继承WXModuleProtocol协议。 第二步 实现方法并暴露给JS

  第三步 将方法抛出给JS

  第四步 初始化时注册到WeexSDK

  第五步 JS调用

  结语 本篇文章旨在分享如何通过自定义Module来扩展Weex的能力,由于最近在忙于找工作,所以写的不是很深入,等过段时间稳定之后,会在继续分享Weex实现原理,以及从注册方法到可以被JS调用中间的实现过程。 作者:GL_fire 链接:https://www.jianshu.com/p/37b884515125 来源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

龙生   04 Dec 2020
View Details

weex采坑之旅(三)Android SDK环境搭建

上一篇文章我们配置了jdk version,这一节就来配置Android SDK环境搭建 Android SDK是Android平台上进行软件开发所需要的开发包,这里我们通过安装Android Studio的方式来安装Android SDK,Android Studio 是Android开发的IDE(集成开发环境),至少是2.0 或者更新版本 同样打开如下连接,此官方网站容易被墙 https://developer.android.com/studio/index.html 如果打不开换下面的路径,此为 android sdk 中文网站,下载 Android Studio http://www.androiddevtools.cn/ 然后运行你们下载的Android Studio进行安装,全选,然后下一步 到此处后,路径可以修改,我就都安装在D盘了,而且还是在同一个目录下,建议大家按照我的来安装, 注意安装目录不能有中文 第一个安装目录修改为 D:\Android\AndroidStudio 第二个安装目录修改为 D:\Android\sdk 我的安装位置 然后一直下一步,去掉勾选,点击finish 然后打开刚才修改的安装路径 D:\Android\sdk,运行 SDK Manager.exe 勾选下面几个(23.0.2一定要下),然后点击 install packages 安装成功后就开始安装环境变量,同样是在用户环境变量中新建一个(因为我已配置好) 变量名: ANDROID_HOME 变量值: D:\Android\sdk 然后在修改用户环境变量 path,是添加两个 变量名: path 变量值: %ANDROID_HOME%\platform-tools %ANDROID_HOME%\tools 如果环境变量是如下图的小伙伴,则在变量值最后面加上 ;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools 同样最后我们来检测是否安装和配置好,输入cmd打开命令行工具 输入 adb 如果出现的结果跟下面的图一样,那么恭喜你环境已经搭建好了 weex的环境变量就这样配置成功了,那么就开始入坑之旅吧! from:https://blog.csdn.net/k491022087/article/details/72934862

龙生   04 Dec 2020
View Details

mybatis 中 Example 的使用 :条件查询、排序、分页

版权声明:这可是本菇凉辛辛苦苦原创的,转载请一定带上我家地址,不要忘记了哈 . https://blog.csdn.net/u011314442/article/details/90140532

  2. PageHelper 使用详解见文章:分页插件pageHelpler的使用(ssm框架中)服务器端分页 3. 更多关于 Example 的使用说明见文章: java 查询功能实现的八种方式 MyBatis : Mapper 接口以及 Example 使用实例、详解 4. 当只是查询数据,不需要返回总条数时可选择此方法:

  当数据量极大时,可以快速查询,忽略总条数的查询,减少查询时间。 以下是该方法原码实现: ————————————————- 2019.5.13 后记 : 1)分页的写法 下图中黄框中的写法运行 比红框中 快,不知道是不是插件本身也会有费时: 2)再补充一种分页方式,mybatis 自带的 RowBounds:

  推荐用 RowBounds :mybatis 自带的,且速度快 。个人运行,后 2 种分页明显比 PageHelper 快。   from:https://cloud.tencent.com/developer/article/1433161

龙生   30 Nov 2020
View Details

使用fastjson解析数据后导致顺序改变问题

在开发过程中遇到一个问题,服务器经过排序返回后的字符串数据使用fastjson解析后,数据顺序发生变化,引起业务异常。 解决办法: 1、解析时增加参数不调整顺序 JSONObject respondeBodyJson = JSONObject.parseObject(jsonStr, Feature.OrderedField); 2、初始化json对象为有序对象: JSONObject retObj = new JSONObject(true); 这样生成的json对象就与放入数据时一致。 3、使用Gson解析 JsonObject returnData = new JsonParser().parse(replyString).getAsJsonObject(); ———————————————— 版权声明:本文为CSDN博主「long2010110」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/long2010110/article/details/81537820

龙生   30 Nov 2020
View Details

Java对象之间相同属性的赋值

场景 两个不同的类,其中一部分的属性相同。 要把其中一个对象的一些属性赋值给另一个对象。 最原始的方式是依次调用两个对象的set和get方法,挨个赋值。 但是spring提供了BanUtils的方法copyPrpperties可以实现。 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。 实现 引入包

然后调用

其中左边是要取值的对象,右边是要赋值的对象。 博客园: https://www.cnblogs.com/badaoliumangqizhi/ 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。 from:https://www.cnblogs.com/badaoliumangqizhi/p/13786384.html

龙生   30 Nov 2020
View Details

com.alibaba.fastjson转换JSON数据后顺序与原JSON字符串顺序不一致原因分析

转换字符串示例:

  结果:

  我们会发现顺序与原来的字符串顺序不一致。 通过DEBUG去com.alibaba.fastjson.parser.DefaultJSONParser的下述方法

  重点就是此行的lexer.isEnabled(Feature.OrderedField)=false,打开JSONObject的源码构造方法可以发现当ordered参数值为false时使用的是HashMap存放数据。

  hashmap是数组加链表结构,根据key的hash算法确定在数组中的位置,当发生hash冲突的时候,根据二叉树或者红黑树构成链表。所以是有序的,key确定,位置也就确定了。 如果要实现转换前的数据顺序与转换后的数据顺序一致,可以使用如下方式:

  此时会使用LinkedHashMap,LinkedHashMap的内部维持了一个双向链表,保存了数据的插入顺序,遍历时,先得到的数据便是先插入的。   from:https://blog.csdn.net/h363659487/article/details/103880710

龙生   30 Nov 2020
View Details
1 104 105 106 411