分类 前端技术 下的文章
在使用elment中el-radio的时候发现控制台报错,Blocked aria-hidden on an element because its descendant retained focus. The focus must not be hidden from assistive technology users. Avoid using aria-hidden on a focused element or its ancestor. Consider using the inert attribute instead, which will also prev- 阅读剩余部分 -
viser-vue可视化插件vue-cropper一个优雅的图片裁剪插件vue-clipboard2复制粘贴插件
jdk 推荐11.xjava -version第一个程序 hello Worldpublic class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
int 用来表示一个整数,取值范围在-2^31 ~ 2^31-1,计算出来是-2147483648 ~ 2147473647关键字 public class static void int 表达式(expression): java- 阅读剩余部分 -
一. vue向flutter发送消息定义一个方法,在方法内部使用如下语句即可。注意‘MessageDeal’方法名要与flutter端定义的方法名一致MessageDeal.postMessage('4') // 向flutter发送数字4
二. vue接收来自flutter的消息注意‘flutterCallJsMethod’方法名要与flutter端定义的方法名一致暴露方法名// 在挂载时将方法名挂载到window上,把方法名暴露给flutter
mounted() {
window.flutterCallJsMethod = this.flutterCallJsMe- 阅读剩余部分 -
在一个dom节点的事件绑定中,如果同时绑定了dblclick和mousedown那么想要执行双击事件(dblclick)时能就会触发两次mousedown事件。在说mousedown就不得不说下 click事件click事件指的是,用户在同一个位置先完成mousedown动作,再完成mouseup动作。因此,触发顺序是,mousedown首先触发,mouseup接着触发,click最后触发。dblclick事件则会在mousedown、mouseup、click之后触发。mouseover事件和mouseenter事件,都是鼠标进入一个节点时触发。两者的区别是,mousee- 阅读剩余部分 -
在使用nuxt3时 npx nuxi init nuxt3-app 提示如下报错D:\weiProject>npx nuxi init nuxt3-app
Nuxi 3.6.1 09:58:45
ERROR Error: Failed to download template from registry: fetch failed
这是因为 ping raw.gi- 阅读剩余部分 -
直接上代码document.addEventListener("visibilitychange", function() {
if (document.visibilityState === 'visible') {
console.log('visible');
} else {
console.log('hidden');
}
});
警告: 当 visibleStateState 属性的值转换为 hidden 时,Safari 不会按预期触发 visibilitychange;因此,在这种情况下,您还需要包含代码以侦- 阅读剩余部分 -
升级node到最新的文档版本后,发现出了不少问题,error @achrinza/node-ipc@9.2.2: The engine "node" is incompatible with this module. Expected version "8 || 10 || 12 || 14 || 16 || 17". Got "18.16.0"这是因为脚手架中的node-ipc 版本兼容问题导致的首先使用命令可以尝试更新@achrinza/node-ipcnpm update @achrinza/node-ipc
如果不好使可以更新下脚手架npm -i g @vue/cl- 阅读剩余部分 -
OpenAI 是什么来自 WikiOpenAI 是一家美国人工智能(AI)研究实验室,由非营利性 OpenAI Incorporated(OpenAI Inc.)及其营利性子公司 OpenAI Limited Partnership(OpenAI LP)组成。OpenAI 进行 AI 研究的目的是促进和开发友好的 AI。OpenAI 系统运行在世界上第五强大的超级计算机上。该组织于 2015 年由 Sam Altman、Reid Hoffman 在旧金山成立,杰西卡·利文斯顿(Jessica Livingston)、埃隆·马斯克(Elon Musk)、伊利亚·萨茨克维尔(I- 阅读剩余部分 -
node升级18之后老项目运行吧报错备注:node版本高于16就会报错解决方案1.最直接的办法:将 node.js 版本降到 v16+2.在项目package.json的在对应运行指令增加命令windows 在终端处输入$env:NODE_OPTIONS="--openssl-legacy-provider"
或
set NODE_OPTIONS=--openssl-legacy-provider
补充:在终端输入一次只能本次生效,如果想永久生效可以在 package.json 文件中修改对应的 scripts 节点的内容如下:"serve- 阅读剩余部分 -
由于在远程删除了分支,有时候本地不能更新到,所以再次操作已删除的分支时git会报错, 此时只需要刷新一下分支列表即可正常操作,git命令如下:git remote update origin --prune
或git remote update origin --p
前端基于远程二级制流下载文件的时候需要注意的前端需要在axios拦截器里面设置responseTypelei'xconfig.responseType = "blob"
后端需要注意的是在设置Content-Disposition的时候后面要加上下面这条,否则返回的res.headers就获取不到Content-Disposition节点response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
// 清空输出流
res- 阅读剩余部分 -
平衡膳食摄入量总览整体可以参照《中国居民平衡膳食宝塔(2022)》进行全面的物资食品储备,方便计算每天各类营养摄入量。各类食物储备清单储备清单简介本章节主要根据居家隔离生活状态,对各类食品储备的分类、详情、存储期以及分级别储备方案进行详细描述,推荐建议上受限于个人常识,可能存在局限。在实际储备量上可参考《中国居民平衡膳食宝塔》,再辅助以特定时间区间进行购买储备。以成年人一日三餐为例,其中早餐以豆奶制品和面食为主,剩余两餐为正餐,建议分为三个阶段:第一周,即2*7=14餐,尽量接近平时正常饮食,储备食品可不考虑较长保质期;第二周至第三周,即272=28餐,需要考虑中长期可保存- 阅读剩余部分 -
let url = window.URL.createObjectURL(new Blob([文件流(一般为res.data)], { type: 'Blob类型' }))
let link = document.creatElement('a') // 创建a标签来下载
link.style.display = 'none'
link.href = url
link.setAttribute('download', '下载的文件名')
document.body.appendChild(link)
link.click()
document.body.removeChil- 阅读剩余部分 -
最近在把vue2升级vue3过程中遇到了各种bug,这次遇到了在vue2中父子传参的过程中发现showSearch数据不更新问题父组件引用
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
子组件
this.$emit("update:showSearch", !this.showSearch);
我们需要吧父组件改成v-model:value="value" 模式<r- 阅读剩余部分 -
<svg-icon icon-class="clipboard" class-name="disabled" />
经过分析是少了个解析插件 svg-sprite-loader ,用npm安装一下,然后需要在vue.config.js中添加配置'use strict'
const path = require('path')
function resolve(dir) {
return path.join(__dirname, dir)
}
chainWebpack: config => {
config- 阅读剩余部分 -
利用device-pixel-ratio单独适配像素比@media all
and (-moz-min-device-pixel-ratio: 1.09) and (-moz-max-device-pixel-ratio: 1.18),
(-webkit-min-device-pixel-ratio: 1.09) and (-webkit-max-device-pixel-ratio: 1.18),
(min-resolution: 1.09dppx) and (max-resolution: 1.18dppx) {
:root {
- 阅读剩余部分 -
首先安装vue-i18n包新建locales/i18n.js文件/**
* Created by liweiliang 406320591@QQ.com on 2022/10/14 15:16.
*/
import Vue from "vue";
import VueI18n from "vue-i18n";
import elementZhLocale from "element-ui/lib/locale/lang/zh-CN"; // element-ui lang
import elementEnLoc- 阅读剩余部分 -
vue项目根目录新增配置文件 .babelrc{
"presets": [
"stage-2"
]
}
修复好 Syntax Error: Unexpected token 启动发现又报如下问题Failed to compile with 9 errors
Module build failed: Error: No PostCSS Config found in: D:\project\
根目录新建postcss.config.js/**
* Created by liweiliang 406320591@QQ- 阅读剩余部分 -
<template>
<div class="moduleIntro">
<el-button-group>
<el-button type="primary" icon="el-icon-arrow-left" size="small" @click="prePage">上一页</el-button>
<el-button type="primary" - 阅读剩余部分 -
经纬度正则/^[\-\+]?(0(\.\d{1,10})?|([1-9](\d)?)(\.\d{1,10})?|1[0-7]\d{1}(\.\d{1,10})?|180(\.0{1,10})?)$/
纬度/^[\-\+]?((0|([1-8]\d?))(\.\d{1,10})?|90(\.0{1,10})?)$/
日期格式化'20150825'.replace(/(\d{4})(\d{2})(\d{2})/,'$1-$2-$3')
公司名称的正则表达:由中文字符、英文字母、数字、中划线、下划线、点、空格和中英文圆括号组成,且不能仅输入空格/^(?!\s*$)[A-Za-z0- 阅读剩余部分 -
安装包 jszip和file-saver代码<template>
<div class="jszip">
<span @click="demoZip">downloadZip</span>
</div>
</template>
<script>
import JSZip from 'jszip'
import { saveAs } from 'file-saver'
export default {
n- 阅读剩余部分 -
项目main.js文件引入import VueQuillEditor from 'vue-quill-editor'
// require styles
import 'quill/dist/quill.core.css'
import 'quill/dist/quill.snow.css'
import 'quill/dist/quill.bubble.css'
Vue.use(VueQuillEditor, /* { default global options } */)
/* eslint-disable no-new */
new Vue({
el: '#- 阅读剩余部分 -
最近在各种魔改一个老项目,遇到了一个这样的错误Ant Design Vue 局部引入 Modal 组件方式import {Row, Col, Button, Collapse, Icon, Modal, Input} from "ant-design-vue";
components: {
AButton: Button,
AInput: Input,
ACollapse: Collapse,
ACollapsePanel: Collapse.Panel,
AIcon: Icon,
AModal: Modal
},
开始看到 di- 阅读剩余部分 -
npm init -y
npm i -S koa@2
创建app.js文件,代码如下:const Koa = require('koa')
const app = new Koa()
app.use(async (ctx,next) => {
const start = new Date()
console.log('[logger middleware] before await ...')
await next()
console.log('[logger middleware] after await ...')
con- 阅读剩余部分 -
声明:此篇文章转自阮一峰大佬博客对于多分支的代码库,将代码从一个分支转移到另一个分支是常见需求。这时分两种情况。一种情况是,你需要另一个分支的所有代码变动,那么就采用合并(git merge)。另一种情况是,你只需要部分代码变动(某几个提交),这时可以采用 Cherry pick。一、基本用法git cherry-pick命令的作用,就是将指定的提交(commit)应用于其他分支。$ git cherry-pick <commitHash>
上面命令就会将指定的提交commitHash,应用于当前分支。这会在当前分支产生一个新的提交,当然它们的哈希值会不一样。举- 阅读剩余部分 -
最近老搞移动端开发,赶脚调试起来很不方便,然后就发现了腾讯开源的vConsolevConsole是一个轻量、可拓展、针对手机网页的前端开发者调试面板。特性查看 console 日志查看网络请求查看页面 element 结构查看 Cookies、localStorage 和 SessionStorage手动执行 JS 命令行自定义插件上手方法一:使用 npm(推荐)$ npm install vconsole
Import 并初始化后,即可使用 console.log 功能,如 Chrome devtools 上一样。import VConsole from 'vconso- 阅读剩余部分 -
这两天有开始搞华为VOLTE第二版了,偷懒样式直接@import,这时发现第一版样式全服错乱,查看了下是在使用@import引入css的时候,css-loader对import的文件会当做外部资源来编译造成它变为全局样式案例<style scoped>
@import "./main.css";
.VoLTE{
width: 100%;
height: 500px;
background: #434656;
background-size: cover;
}
</style>修改成<style scoped - 阅读剩余部分 -
最近开发项目在和华为Volte做对接,结果华为volte第一版还是原生加jquery来实现的,由于里面有不少需要引入外部js文件的,就给了一天的时间做对接,没办法只能剑走偏锋了首先定义一个 utils/loadScript.js 封装一个动态加载js文件的方法export function loadScript (url) {
return new Promise((resolve, reject) => {
const script = document.createElement('script')
script.onload = () =&- 阅读剩余部分 -
最近在搞vue3+Typescript脚手架然后在定义变量的时候报错 'name' is never reassigned. Use 'const' instead prefer-const
大概意思就是 标识符'errMsg'永远不会被重新分配;使用'const'而不是'let'。(prefer-const)解决方法就是在eslint配置文件或者tslintt配置文件增加{
"rules":{
"prefer-const": "off"
}
}
- 1
- 2
- 3
- 4
- ...
- 7
- 后一页 »