
JS
张景源
这个作者很懒,什么都没留下…
展开
-
使用 whistle 在 macOS 上进行抓包
使用 whistle 在 macOS 上进行抓包原创 2023-02-16 19:31:27 · 1405 阅读 · 1 评论 -
JS Array 的 map() 方法和 await 一起使用
在对数组进行逐个异步操作的时候,想使用 await 来获取操作后的数组,尝试了如下的写法:const resArr = await arr.map(async (item)=>{ const resItem = await query(item) // 异步操作 return resItem})这样的写法是不正确的,因为 Array.prototype.map() 不会返回一个 Promise。可以采用如下的写法const promiseArr = arr.map((item)=>原创 2022-04-28 22:12:09 · 1457 阅读 · 0 评论 -
前端使用 UserAgent 判断是否是移动端
直接上代码function isUserMobile() { const ua = navigator.userAgent.toLowerCase(); return /mobile|android|iphone|ipod|phone|ipad/i.test(ua);}原创 2022-03-16 23:28:29 · 2567 阅读 · 0 评论 -
在 Next 页面中添加 meta 信息
Next.js 暴露了一个内置组件 head,用于将 HTML 标签添加到页面的 head 中,可以借用此添加 meta 信息。例如:import Head from 'next/head'function IndexPage() { return ( <div> <Head> <title>My page title</title> <meta name="viewport" conten原创 2021-05-12 14:50:58 · 2294 阅读 · 0 评论 -
Vue 报错 Unexpected side effect in “...“ computed property
Vue 的 计算属性 (computed) 中应当仅包含用于返回值的计算,不应该包含 DOM操作,修改外部变量,异步操作 等。这些操作应该在 侦听器 (watch) 中实现原创 2021-01-27 11:28:46 · 19812 阅读 · 3 评论 -
React 中实现滚轮触发的横向滚动
在要滚动的组件上添加 onWheel事件回调函数yWheel <div ref={this.container} className={style.container} onWheel={this.yWheel}> {this.listDom()} </div>定义yWheel yWheel(e) { e.currentTarget.scrollLeft += e.deltaY; }...原创 2021-01-19 15:25:32 · 1750 阅读 · 0 评论 -
Axios 取消前一次请求
在对一些按钮点击或者输入事件绑定API请求的时候,当点击、输入过快时,可能出现后一次请求会比前一次请求先到达的情况,导致页面显示的信息没有更新到最后一个请求的结果。对于这种情况,Axios 提供了 cancel token,我们可以用它来实现:在发送后一个请求的时候,终止前一个请求的回调。Axios 的 cancel token 文档代码如下:import axios from 'axios'const CancelToken = axios.CancelToken;let cancel =原创 2021-01-18 16:36:42 · 2789 阅读 · 0 评论 -
Vue CLI 的 env 文件中定义的环境变量不生效
自定义的变量必须以 VUE_APP_ 开头官方文档:https://cli.vuejs.org/zh/guide/mode-and-env.html#环境变量原创 2020-12-30 15:41:36 · 6486 阅读 · 1 评论 -
Python 后端 Flask 返回静态文件
后端from flask import Flaskfrom flask import send_from_directoryapp = Flask(__name__)app.run(debug=False)#......@app.route('/getLogFile', methods=['GET'])def getLogFile(): try: return send_from_directory('','log.txt') else:原创 2020-12-29 10:15:17 · 7651 阅读 · 0 评论 -
向 Vuex 的 Actions 中的方法添加回调
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。在 Vuex 中,我们会使用 Actions 进行一些异步操作,例如 API 请求。在许多情况下,我们需要对这样的操作添加回调,在此,我以登录提示为例介绍三种方法:第一种(不推荐)App.vuemethods: { ...mapActions([ 'login' ]), logSuccess(){ cons原创 2020-12-23 11:46:27 · 2222 阅读 · 0 评论 -
常用的前端地图框架(WebGIS框架)
1. LeafletLeaflet 是最著名的前端地图可视化库,它开源、体积小、结构清晰、简单易用。2. Mapbox GL JSMapbox GL JS 是目前最新潮的前端地图库,它的矢量压缩、动态样式和三维性能令人印象深刻。它本身是开源的,但一般依赖于Mapbox公司提供的底图服务。3. ArcGIS API for JSArcGIS API for JS 是较为学院派的前端地图库,它是ArcGIS开发套件中的一部分,和桌面端和服务器端ArcGIS软件有较好的协作。它不开源且收费不低,在学术场原创 2020-11-20 18:59:33 · 22167 阅读 · 4 评论 -
firefox 火狐浏览器 跨域设置
在用开发Web应用时,常常需要跨域请求资源,这就需要解除浏览器的跨域限制。否则会报已拦截跨源请求:同源策略禁止读取位于 ..... 的远程资源。(原因:CORS 头缺少 'Access-Control-Allow-Origin')。这样的错误。对于Chrome浏览器,设置跨域很容易。例如:https://www.cnblogs.com/shihaiming/p/10984394.html 但对于firefox并不容易,许多人介绍了设置 security.fileuri.strict_原创 2020-09-29 16:15:04 · 11789 阅读 · 0 评论 -
Element Table 使用后端排序写法
html中: <el-table :data="tableData" @sort-change="sortChange" > <el-table-column prop="date" label="日期" sortable="custom" width="180"> </el-table-column> </el-table>motheds中:methods:原创 2020-09-16 13:50:07 · 1037 阅读 · 0 评论 -
Unexpected string concatenation解决
拼接字符串报错 "Unexpected string concatenation"错误原因:ESLint推荐用ES6方法来拼接字符串,而不能使用加号。解决办法:拼接字符串使用形如:`字符串字符串字符串${变量名}字符串字符串字符串${返回字符串的方法}字符串字符串`的写法。...原创 2020-08-13 10:27:15 · 21485 阅读 · 1 评论 -
什么是DOM?DOM和JavaScript的关系是什么?
什么是DOM?文档对象模型 (DOM, Document Object Mode)是HTML和XML文档的编程接口。它提供了对文档的结构化的表述,并定义了一种方式可以使从程序中对该结构进行访问,从而改变文档的结构,样式和内容。DOM 将文档解析为一个由节点和对象(包含属性和方法的对象)组成的结构集合。一个web页面是一个文档。这个文档可以在浏览器窗口或作为HTML源码显示出来。但上述两个情况中...原创 2019-07-15 15:05:52 · 2821 阅读 · 0 评论