- 博客(21)
- 收藏
- 关注
原创 配合vue-route更优雅的实现懒加载(lazy-load),显示Loading加载状态
一般情况下,在Vue中引入组件,我们都会使用:import MyComponent from './MyComponent.vue';在大型项目中,我们经常需要进行分隔代码(split code),以免产生过大的单一文件。Vue router的文档中有推荐的使用方式:const MyComponent = () => import('./MyComponent.vue');结合webpack的配置,在build过程中此chunk会被从app.js提出单独打包。在前端页面路由到相应功
2021-08-25 14:37:04 3541
原创 关于@vite/client 404
多发生于项目从webpack迁移至vite的过程。虽然debug比较麻烦,但是解决方法意外简单。如果你在vite.config.js里添加了类似 resolve: { extensions: ['.vue', '.js', '.json' ], alias: [ { find: "@", replacement: path.resolve(__dirname, './src') }, ], },这样的兼容逻辑,那么在extensions数组里加入"
2021-07-22 11:15:45 8152
原创 go httpmock无法拦截请求
今天测试时候发现用httpmock包,无论如何设置都无法拦截请求。后来查询文档https://godoc.org/github.com/jarcoal/httpmock#RegisterResponder, 发现默认只拦截http.Client发送的请求,即 client := &http.Client{} resp, err := client.Do(req)而之前用的是tr := &http.Transport{ // TLSClientConfig:..
2020-11-04 23:38:59 2625
原创 控制iframe的小技巧
做web ssh时遇到一个问题:想要手工建立一个iframe,然后在其中添加DOM组件,但是发现各浏览器对iframe的行为不同。测试浏览器: chrome75.0.3770.100, firefox60.7.2esr, firefox 67.0.4测试代码:<html><head></head><body><div&g...
2019-07-02 18:42:47 2719
原创 关于浮动菜单在点击之前自动隐藏的问题
做div浮动菜单,需要在点击菜单项之后再消失整个菜单,但是如果简单在外层div中设置onblur的话,就会在内层菜单触发点击之前隐藏掉整个菜单导致点击不生效。简单搜索了一下,大概有设置全屏透明层和在内层的onmousedown里设置preventDefault的方法。但是如果用React或vue之类的框架,有一种不知道算是简单还是复杂的方法,即在外层菜单同时设置onfocus和onblur, ...
2019-03-01 18:21:50 317
原创 Firefox的请求头不带Cookie
最近开发前端,发现Firefox的请求头没有带Cookie字段,但是Safari和Chrome却带着,百思不得其解。 后来发现,因为使用了whatwg-fetch库,但是fetch options没有加credential: same-origin,而ff和chrome的默认行为居然还不一样。。坑...
2019-02-27 16:10:14 1708
原创 前端JS的一些小坑
1. typeof(null) == 'object'2. document.cookie对于httpOnly的cookie无法读取
2019-01-25 15:55:26 215
原创 scroll-view的横向滚动
本来以为实现一个横向滚动的view很简单,但是实际上还是有个小坑的。因为scroll-view本身的display:flex不生效。scroll-view的内层view元素需要:display: inline-blockscroll-view的外层元素需要:white-space: nowrap使得内部组件不换行。再加上一些左右空行的渐变修饰,使得一个简单的横向滚动元素...
2019-01-02 21:52:56 32172 3
原创 用movable-view实现可拖拽的列表元素
wxml: <movable-view class="outer"> <movable-item class="inner" wx:for="sequence" bind:change="onChange" bind:touchstart="touchstart" bind:touchend="touchend"&am
2019-01-02 21:18:42 1742
原创 QQ输入法截图屏幕自动放大
QQ输入法的Ctrl+shift+Q截图相当方便,但是WIN7下高分屏开启了DPI放大时,这样截图会造成屏幕自动放大。解决方法是找到qq输入法安装文件夹,右键SnapShot.exe,选择兼容性,勾选“禁止高DPI时自动放大(Disable display scaling on high DPI settings)”即可。
2017-01-18 16:29:42 3077
原创 django框架从零开始_011_测试view
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial05/上一个测试我们了解到了如何测试一个方法是否如我们预期的工作方式一致,接下来我们来看看其他功能。django提供了一个测试客户端,可以在view层面模拟用户的操作。我们可以在tests.py或者shell中使用它。让我们从shell开始。在shell测试中我们需要一些在
2016-05-21 17:06:20 1424
原创 django框架从零开始_010_自动化测试
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial05/为什么需要自动化测试?因为这可以在你的程序修改的时候告诉你是否对原先功能产生影响。不同于之前的手动测试,自动化测试是你预先创建一部分例子,在你修改代码后运行这些例子然后检查结果是否仍是你需要的。这样就可以省去每一次手工测试的时间。在实际生产中,这种自动化测试是必不可少的。
2016-05-14 22:00:49 3877
原创 django框架从零开始_009_通用页面
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial04/#use-generic-views-less-code-is-better我们做的detail、result、index的界面非常简单,但是同时,也很冗余。这些页面做了标准网页开发应该做的事情:根据url从数据库中读取数据、加载模版页并显示出来。这种应用太常见了,所以d
2016-05-11 22:15:08 740
原创 django框架从零开始_008_页面元素 表单处理
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial04/我们现在来练习更多的views相关的表单处理方式。下面来更新一下polls/detail.html页面,如下:{{ question.question_text}} {% if error_message %} {{error_message}} {%endif
2016-05-08 23:35:55 531
原创 django框架从零开始_007_view以及模版页
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial03/#write-views-that-actually-do-something下面让我们来做一些真正有意义的view页面。一个view应该要么返回一个包含请求页面内容的HttpResponse,或者抛出一个异常(比如Http404)。而在view处理过程中你可以做任何你需
2016-05-08 00:12:54 432
原创 django框架从零开始_006_draft views
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial03/来到的MVC的views。我们的例子polls需要四种页面:Question的主页面 —— 显示最近的几个questionsQuestion的细节页面 —— 显示Question和choicesQuestion的结果页面 —— 显示选择的答案结果Action
2016-05-05 22:32:20 427
原创 django框架从零开始_005_管理界面
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial02/#introducing-the-django-admindjango为内容的增删改查设置了自动化界面,就是这里要介绍的管理界面。受限先来建一个用来登录的超级用户:python manage.py createsuperuseradmin
2016-05-03 22:47:30 463
原创 django框架从零开始_004_数据库_API
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial02/#playing-with-the-api设置好了model,我们可以接触一下django提供的python shell APIs。执行python manage.py shell可以看到我们进入了一个python shell。之所以使用m
2016-05-03 21:46:50 550
原创 django框架从零开始_003_数据库
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial02/django支持主流的数据库,包括oracle、mysql、postgre、sqlite。如果只是初探,django提供了默认sqlite的配置,无需再安装其他的。在这里我们尝试使用postgre。我下载的版本是postgre 9.5.2-1 winx64版,安装完毕
2016-05-03 17:20:39 641
原创 django框架从零开始_002_helloworld
参考:https://docs.djangoproject.com/en/1.9/intro/tutorial01/环境搭建成功,开始搭建示例project。cmd到你希望保存的目录,运行:django-admin startproject mysite虽然没有输出,但是dir一下就能看到效果。注1:site名字不要用特殊词汇,比如django、test,等
2016-05-02 23:20:59 385
原创 django框架从零开始_001_安装
跟做。参考: https://docs.djangoproject.com/en/1.9/topics/install/#database-installation环境为win10。在www.python.org下载python3.5x64,安装。之后添加python.exe和pip所在目录到path环境变量(为了可以直接在cmd下使用)。在cmd使用命令 pip instal
2016-05-02 23:11:05 355
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人