办公室高手
如何使用 LLM 来做爬虫的页面通用解析?
刚好前一段弄个类似的需求,大概说下思路,主要是移除无用的标签和代码,精简发给大模型的上下文,步骤如下:
1、首先用node-html-parser解析页面,这步就过滤掉了script、style、noscript之类的
2、创建一个新的根元素
3、弄一个标签和属性的白名单
4、遍历第1步解析好的DOM树,这里用的深度优先,在白名单内的挂到第2步的根元素中
5、返回第2步根元素的innerHTML
办公室高手
Vscode的自动补全 ,怎么 按下 `.` 就被自动确认使用第一个了?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250109/5426cfd3e0e7515abd9d84fea38faad3.png)
我想输入的内容 $route.param.id
然后输入route的时候提示 $forceUpdate, 这个不是我想要的,所以我继续输入. 结果就变成了
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250109/0a52ba4dc13a9c5157a50761ae03d441.png)
vscode给我自动确认使用第一个了?
这个是怎么配置 取消这个功能的?
***
补充内容:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250109/34c072bf9448577608c706c902329c3e.png)
办公室高手
怎么提高页面中大量图表渲染的性能?
我的使用场景是需要批量绘制大量图表,不过这些图表具有一定的规律性,整行或者整列是同类型图表,有什么方式可以优化性能呢?现在问题是当滚动的时候,图表渲染跟不上,滚动交互也不流畅。
办公室高手
window.open()跳转,会被浏览器拦截?
问题描述
页面操作调用A接口,用A接口的返回结果当作B接口的请求参数发起请求,B接口响应成功,返回URL地址,通过window.open()跳转,被谷歌浏览器拦截……
问题出现的环境背景及自己尝试过哪些方法
尝试的方法一:先调用open打开新标签页,B接口返回后通过location实现访问。(否决原因:B接口响应慢,将出现白屏)
尝试方法二:手动创建a元素,通过该元素的点击方法跳转,依然被拦截
你期待的结果是什么?
先获取URL,再跳转,不被拦截。
办公室高手
amh新装面板 phpadmin 导入数据文件 413 Request Entity Too Large?
amh新装面板 phpadmin 导入数据文件报错,413 Request Entity Too Large
数据文件大小50多m
«php调整到100
POST数据最高大小 (post_max_size) 100M
上传文件最高大小 (upload_max_filesize) 100M
nginx配置文件增加
client_max_body_size 100m;
已重载nginx,还是报错413»
办公室高手
js 字符串输出控制(不知道怎么描述...)?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241226/e73bacadb7fe2b800d9923611b038aed.png)
红框是我希望的,背景是我拥有的。
let str = `whetherTrain 是否培训 1.是 2.否 false
integer(int32)`
希望输出结果 :"'whetherTrain\t是否培训 1.是 2.否\t\tfalse\t\ninteger(int32)'"
如何做呢?
办公室高手
uniapp 发布APP时怎么打dev和prod包?
config.js里怎么配置,配置好后又怎么知道打的包是开发环境的包还是生产环境的包?
app是不是不能打包?有人试过么?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241225/7ca7af0f7d7f556629a1a312b2e0b286.png)
办公室高手
chrome控制台debug 堆栈和 源码位置对不上,如何处理?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241224/2003a23ba069fc7cc9287f1e7fd28b60.png)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241224/ae8b7f558acce9f47d508a06e82a5427.png)
debug的时候 定位不到 正确的代码位置。
第一张图是 应该 定位的位置。
第二张图 是实际调试时定位的位置。
这个该如何处理?
办公室高手
请问在工程化项目中,不同组件内导入同一个模块,得到的导出对象是同一个对象吗?
如题,新增一个模块eventBus,例如:
"export default new Vue()"
现在我们有2个组件,分别是a.vue和b.vue,分别导入上面模块
"import eventBus from './eventBus.js'"
请问得到的eventBus对象是同一个吗?还是不同的2个对象?
办公室高手
ES中查询文档与dsl查询有啥区别?
ES搜索中,可以通过"GET /索引库名称/_doc/id"查询文档,也可以通过
GET /索引库名称/_search
{
"query":{
"查询类型":{
"查询条件":"条件值"
}
}
}
对文档进行查询
***
想问一下大佬们,这两者的区别是啥?都用在什么地方
办公室高手
如何根据日期字符进行串排序?
const arr = [
{
name: 'AAA',
date: '2023/02/03'
},
{
name: 'BBB',
date: '2023/03/05'
},
{
name: 'CCC',
date: '2022/02/07'
}
];
arr.sort((a, b) => new Date(a.date) - new Date(b.date));
console.log(arr);
办公室高手
为什么qt在槽函数里无法对qfile对象进行操作啊?
Lambda写错了吧?差两个括号,应该是[&](){ fi.write("def"); }
connect(&u, &QUdpSocket::readyRead, [&](){fi.write("def");});
希望能帮助到你。
办公室高手
如何使用golang os\exec包,操控一个交互试命令程序?
你如果是想写交互式命令行工具的话,我推荐一个包给你
github.com/AlecAivazis/survey/v2
参考文章你可以看这个
"https://blog.csdn.net/zhanggqianglovec/article/details/127986871" (https://link.segmentfault.com/?enc=sKA%2BzNmCJ2b5auBIdwRzCQ%3D%3D.MGaXgwW0NWK71vVnh9jWaxnipQ98TdkPbef4wMZXZomTjA3I0WCHnIZuWQ0NBOZZ3We3FMEuiZcrSGHmt8G%2B8dE4rLXD1uaD7QGvTp4X1Wg%3D)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241207/5ccf270d59113e53ee49374af6363376.png)
这篇文章应该能帮助到你
办公室高手
解决前后端跨域时,常说的 node 中间件是什么?
你可以把"中间件"理解为一种扩展方式,通用库/框架/运行时在设计时,为了增加一些"关键流程"的可扩展性,都会采用比如像"切面编程"等思想来实现我们常说的"中间件,插件"等机制
就用你问题场景中的 "http" 请求与响应举例,通常业务开发都不会直接使用node提供的 "http" 模块,因为要处理的细节还是比较多,通常会选用一个对
http 封装简化后的上层库
而"上层库"肯定只负责提供一些更简洁的方式来给开发者使用,不会涉及任何"业务逻辑"或者"特殊处理",那么使用者想在一些"关键阶段"做一些业务上的处理该怎么办呢,这里就回到主题了,"中间件"的作用就是解决这种场景下的问题
由此也可以知道,"中间件"肯定是一段具体的代码,并且是按照对应的库的要求,编写的具有一定格式的代码。
补充一点,很多库为了"减轻"核心模块的"代码体积",也会把部分通用功能以"中间件"的方式实现,由使用者来选择使用
办公室高手
vue中有根据文字内容转成MP3文件内容的插件吗?
就是可以文字转mp3文件的插件
办公室高手
android 加载40张图片性能卡顿怎么办?
* 使用图片加载库 :使用专门的图片加载库(如Glide或Picasso)可以帮助你有效地管理图片的加载和缓存,以避免过多的内存消耗和滚动卡顿。
* 优化RecyclerView(虚拟列表) :通过设置RecyclerView的一些优化参数,例如使用合适的LayoutManager、设置RecyclerView的回收复用机制、避免在滚动过程中执行耗时操作等,可以改善滚动性能。
* 分页加载 :考虑将大量图片分页加载,即在滚动到一定位置时动态加载新的内容,而不是一次性加载所有图片。这可以减少一次性加载过多内容而导致的性能问题。
* 图片压缩和优化 :确保你的图片资源已经进行了压缩和优化,以减少内存消耗和加快加载速度。你可以使用适当的工具来压缩图片,同时选择合适的图片格式,如WebP格式等,以减小图片文件的大小。
* 使用占位符 :在图片加载过程中,可以先使用占位符来占据图片的位置,待图片加载完成后再替换占位符。这可以改善滚动过程中的画面抖动问题。
办公室高手
【nacos配置中心】服务端2.2.1升级至2.2.3 报错403/404?
大佬们好:
我是一名java小开发,最近收到了主管让我升级nacos配置中心的需求。我现在碰到了一个问题
问题背景:测试的nacos服务端版本是2.2.1,客户端版本有1.3.4也有1.3.3,然后nacos有两个节点,有一个nginx做负载,各客户端配置的是域名作为服务发现
生产环境nacos版本也是2.2.1,但是没有nginx,所以都配置的是nacos 的 多节点ip地址。
问题描述:当我把测试环境的nacos服务端版本升级成2.2.3的时候,各系统应用服务疯狂报错403 ,404。当我详细查询nacos官网的时候,我发现2.0以上的nacos版本中通信由http变为了tcp,所以我将测试环境的nginx转发改为了tcp协议转发,后面这个问题就解决了。但是我产生了两个疑问
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241121/84e0b67e12b7af920e623e85106ccc53.png)
问题一:测试环境本来就是2.2.1,如果是因为2.0协议发生问题,那早就应该发生问题了,而不是从2.2.1到2.2.3的时候才报错,所以我不明白这是为什么。
问题二:生产环境没有nginx,各系统配置的是多节点ip,所以我理解生产环境直接升级就行了,不需要关心 http转tcp 协议的问题
问题三:为什么这个错误是403,404呢?
请各位大佬谅解一下小白的问题,给与答复,感谢您们的支持
办公室高手
get返回的json字符串,我通过php json_encode后,如何取值?
json字符串如下:
{
"headers": {
"Content-Type": ["application\/json;charset=utf-8"],
"Content-Length": ["110"],
},
"statusCode": 200
}
我通过 $json=json_encode(上面的返回字符串);
我如何取statusCode的值?
我用$json['statusCode']返回500错误: "message": "Cannot access offset of type string
on string"
办公室高手
el-upload与van-uploader上传二进制数据的区别?
最近在做vant的一个项目,需要上传文件,但是van-uploader得自己写上传逻辑,后端要二进制的格式,找了一下el-upload的上传就是上传的二进制,但是自己写的好像不对,想问一下el-upload上传的二进制数据原来是啥样的啊
这是自己写的,只转了base64部分,不清楚el-upload转了哪部分
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241113/d86f2c8504a1ddd0960dd0b0be2b6a1c.png),
van-upload上传后返回的file,
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241113/aa712081e34419397f3c426f020098dd.png)
尝试把整个file文件转成二进制,好像也不太对
办公室高手
Windows7下ELectron应用的Input输入框在拼音输入中的失焦问题?
最终还是没解决,最后采用了简单的js方案,具体可看
"pinyinjs" (https://link.segmentfault.com/?enc=tuaGOiq3ay4p2qEX2LQvRA%3D%3D.JwIwxu%2BRbdP8aHQjg0ccfLW5ixYUvB5ZwhVbzphJdYDOMtfQ%2FYWn9bkW906mObjg)。
想要通过user32.dll的SendInput方法实现输入的,可以参考这个"回答" (https://link.segmentfault.com/?enc=2JkLqTbC%2BG8TSQyhtFN3Tg%3D%3D.RoJjz5AZp4dsZzq7bW7oVa2puUnNMOxLdUnj%2FvkoJ03VSGAwZQypfa2UBP5bHM5s)。
办公室高手
react函数组件setState问题?
react 在 A 函数设置了state 然后调用 B函数,B函数中使用了state,但直接获取state不是最新值。
使用Effect和通过函数参数传递来解决,感觉都不优雅,大佬们有没有比较好的经验?
办公室高手
想问下,C++,怎么把一个对象的内容保存在磁盘的文件里呢?
我觉得你是在说对象的序列化和反序列化。序列化就是把对象转成字符流或字节流以便传输或存储,反序列化就是从数据里恢复对象。
在java里我们有专门的对象序列化接口,实现这个接口就可以将对象序列化成字节流写到文件里,然后也可以通过文件读取字节流再把它转成对象。
除了java特有的序列化,我觉得可能很多语言包括python和c++等都可以用json作为序列化方案,就是把对象写到json文件里面,这样也有助于在异构的程序间传递数据。json文件的格式很好理解,比如你的对象就可以写成
{
"str": "abcdefg",
"a": 123456,
"date": "2023-11-15"
}
在json里表示列表可以用中括号[],比如表示一个你的对象的列表可以是
[{
"str": "abcdefg",
"a": 123456,
"date": "2023-11-15"
},
{
"str": "vwxyz",
"a": 98765,
"date": "2023-11-14"
}]
我觉得c++大概率是有json序列化和反序列化库的,可以试着找一下?
办公室高手
求一个用于调试的操作系统?
巧了,作为一个曾经的网安人,我想说真的有,不过这个系统是当时我们内部自己做的,其实也并不高大上,就是把一些平时会用到的相关分析工具(当然一些工具也许外面很难找到或者没听过)整合在一起的,仅此而已,另外就是做了一些本地系统驱动的禁用以及对环境的调配,比如32,64位的设置。
最后纠正几个你可能会误会的几个问题,我们做这种系统的目的并不希望这个程序被干掉,相反我们更希望它运行在系统里面,然后我们进行分析之类的操作,所以不会有任何的防火墙,现有的操作系统防火墙都会被我们提前禁止掉,就是为了避免影响真实的测试结果。
办公室高手
Vue+vuetify如何封装一个高复用的新建/编辑侧边弹窗?
简述:目前准备要做页面重构,现有的弹窗样式要弃用,要改成侧边弹窗,最先尝试的是封装一个公共弹窗组件,通过传参,父组件向子组件传值的形式实现新建或编辑功能,但是面临一个问题,有非常多的接口,每个页面都有不同的新建和编辑的API接口,但是我又不想把这些接口都放在公共组件里面,感觉复用性不高,大佬们有啥办法吗~~~
正在尝试处理接口的放置
办公室高手
为什么我的自定义样式表在Safari中不能正常工作?
第一个你访问的自己项目,用的是file协议,所以可以应用到你的本地目录中的图片文件。
第二个你访问的百度,用的是http协议,但是你期望使用本地目录中的图片作为背景图片,这样是无法应用上的。
算是一个网页开发的基础就是尽量不要使用file协议来访问项目(临时应急除外),还有就是就是不要使用本地文件目录地址来作为引用地址。
因为很多时候我们会把网页部署到服务器中,这个时候你设置的 "background-image: url("/Users/luxury/Desktop/wallhaven-o5762l.png")" 其实会被浏览器解析为 "background-image: url("http://www.baidu.com/Users/luxury/Desktop/wallhaven-o5762l.png")"
很明显服务器上不会有这样的一个文件,也不会有这样的文件目录。自然没办法正确载入需要的背景图。但是样式还是会被正确应用的,只不过图片资源再加载的时候会返回404。这点可以在devTools
的 network 面板中看到。
***
Edit
补充一下,因为你使用的是 "user style sheet" 所以我不是很确定safari单独做了处理来确保可以引入本地文件。
你可以尝试一下把 "background-image: url("/Users/luxury/Desktop/wallhaven-o5762l.png") !important;" 修改为 "background: #ffbebe url("/Users/luxury/Desktop/wallhaven-o5762l.png") !important;",看看是否能够应用上。
办公室高手
如何用Java将一个Excel的文件的数据读取到另一个Excel中?
如何用Java将一个Excel的文件的数据读取到另一个Excel中?
我有两个excel文件,希望将A文件中的数据合并在B文件中。有没有推荐的方案
办公室高手
在使用POI的时候内存溢出了,怎么解决?
POI打开大文件时,经常会遇到问题,不过POI从3.8开始,提供了一种专门读取大文件的方式 SXSSF。
SXSSF通过一个滑动窗口来限制访问Row的数量从而达到低内存占用的目录,XSSF可以访问所有行。旧的行数据不再出现在滑动窗口中并变得无法访问,与此同时写到磁盘上。
另外,如果对大文件的读取,是可以考虑使用 EasyExcel,EasyExcel 在读写大文件时,有比较好的优势。
如果除了读写Excel文件,还有类Excel的需求,可以使用GcExcel,GcExcel除了对类Excel的功能支持的很好之外,在读写,公式计算,导出等功能上,性能也非常好。
"https://www.grapecity.com.cn/developer/grapecitydocuments/exc..." (https://link.segmentfault.com/?enc=LFpaNYfAG2NkKuUvxg7gzg%3D%3D.JlQsCUHp1z15%2BjsTIW8P1IgIziujKWofoEMm17lHRlTVT9LxZNh79xRC7uV85Uonut5rRA4StoNv4GFPxK3L3GtTjfIsQ5naQ9esY7Chpow%3D)
办公室高手
Flutter打包报错:资源链接获取失败的错误?
flutter打包报错
创建一个初始的flutter项目试下打包,结果总是报错资源链接获取失败的错误
报错如下:
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241103/be35c42da5e70acac546022d01f8c112.png)
版本号
flutter 3.16.2
gradle 8.5
安卓sdk
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241103/6e7b998f7e2553a73eebf184961297c8.png)
项目安卓相关资源
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241103/342ba7ad9d5dd4e59fae9b7cb90867b9.png)
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241103/ed2cd4d148141f944ff64ba9cf8d1ea4.png)
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241103/ea6f9b8487c58b5cbcb7f436318d240c.png)
flutter环境配置
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241103/b2e6f85868b832f13d687ffbcc65221a.png)
办公室高手
Java 中如何给POI生成的Excel文件添加 Border?
如何使用java给POI生成的Excel文件添加 Border呢?求助下方案
办公室高手
如何实现饿了么点餐左侧菜单效果?
可以看下这个"https://jsfiddle.net/JinRMoriarty/Lvu0463r/" (https://jsfiddle.net/JinRMoriarty/Lvu0463r/)
办公室高手
CSS变量在父元素和子元素中的继承和覆盖规则?
不是 BUG ,控制台划掉的只是因为 "--light-color" 变量被覆盖了,跟 "--color" 变量的值无关,所以 "--color"
还是在 ".container" 中赋值的 "--light-color" ,即 "red",你点一下那个高亮还会有辅助指向
发生这个问题的核心是:css 变量是基于 重新定义 来实现覆盖的,所以它 没办法改变变量值
内部作用域覆盖,只是 让变量先找内部作用域,而 不是 修改外部已经定义的变量值
因此上述代码可以这样改(省略掉中间变量 "color"):
.container {
--light-color: red;
--dark-color: green;
}
.A,
.B {
height: 100px;
}
.A {
background-color: var(--light-color);
}
.B {
/* 这样才会正确覆盖作用域 */
--light-color: blue;
background-color: var(--light-color);
}
css 变量的作用域是可以覆盖,但是如果这个变量的值是另一个变量,在 "var" 的时候,其实已经是一个字符串了,不是引用了,所以再怎么改 ".B"
的变量,也不会生效,除非你重新定义一遍(当然这样没啥意义,不如去掉)
.B {
--light-color: blue;
--color: var(--light-color); /* 等于说是把外部的 --color 覆盖了 */
background-color: var(--color);
}
办公室高手
ES6 父子继承中一些执行顺序以及this指向的问题?
有如下代码:
class Parent {
constructor() {
console.log('parent constructor', this.name)
this.init()
this.logNum = this.logNum.bind(this)
}
name = (() => {
console.log('Parent name init')
return 'Parent'
})()
num = -1
init() {
console.log('parent init', this.name)
}
logNum() {}
}
class Child extends Parent {
constructor() {
console.log('Child constructor')
super()
console.log('super exec finish', this.num)
}
name = 'Child'
num = (() => {
console.log('Child num init')
return 99
})()
init() {
console.log('Child init', this.name)
super.init()
this.num = 10
}
logNum() {
console.log(this.num)
}
}
const { logNum } = new Child()
logNum()
打印结果:
Child constructor
Parent name init
parent constructor Parent
Child init Parent
parent init Parent
Child num init
super exec finish 99
99
1、在实例化Child时,Parent.constructor中的name为什么是'Parent'?
"Child.constructor"中调用"super",内部"this"指向为"Child",所以不应该是'Child'吗?
2、诸如x = 'a'的实例属性是什么时候完成初始化的?
"Child.constructor"中调用"super"时,可以看到打印了"'Parent name init'",说明实例属性是在构造器方法之前就初始化了吧,那为什么"Child.num"是在"super"调用结束后才初始化?
办公室高手
ag-grid:是否值得推荐?
为什么国内使用的人少,主要就是文档没有中文的(可能有社区维护的中文版文档,但是并不是官方提供的,就可能会有版本落后的问题)。
然后就是需要购买授权许可证 👉 "Vue Data Grid: AG Grid: License and
Pricing" (https://link.segmentfault.com/?enc=baOTL%2FYIdCFLlOOm2sCUyQ%3D%3D.qxwDvty%2FGX4IMLxGNkED3nDVHyAb5XbMq%2BTLPVHkhHFiLgzL7Wxa3P8hCc0jRPnR)
社区版本会缺少部分功能 👉
"功能对比" (https://link.segmentfault.com/?enc=pYBBLGHOZeFhX4DtAruB3A%3D%3D.m%2Fl8zo8d4voHWKB3kX1HimFtPtLkUVZB7EykCZdmKNv%2BTNPc6bii3Zrfvq1j1%2BxslnI4w9P1XG9RVow7EKfDohZICpb1%2BxheAzRmHCYKxa0%3D)
其实主要还是缺少中文档的关系,并且国内大部分的项目都是使用的UI库提供的Table组件来实现各种表格相关的功能。特别是ElementUI,可以看到社区有很多针对
ElTable 组件的各种扩展。
至于是不是推荐使用,就看你们团队能不能啃得动英文文档,以及购买授权之后是否可以有效和其开发团队沟通。
国内其实也有一些类似的商用Table组件库,比如说AntD4Vue社区团队开发的 "Surely
Vue" (https://link.segmentfault.com/?enc=Y%2BFiSKuu9lVQMcYB6MiLDA%3D%3D.%2BqMlJUTCnb8nDUvKPjHUqkVZ2%2F3kb2Y2KLqA5hlBQJA%3D)
办公室高手
一个关于vue CDN引用cordova的问题?
目测跟你这段代码可能关系不大,而是某段代码会请求 "gap://ready",而 "gap" 协议不被测试环境接受,所以就报错了。
办公室高手
VSCode文件夹未在资源管理器中显示,该怎么办呢?
在 VSCode 里,我点击了文件中的打开文件夹,选中我要打开的文件夹却不在 VSCode
的资源管理器中显示出我所打开的文件夹(也就是资源管理器中什么都没有),这是什么问题,对我这初入前端的学弟来说该怎么解决呢?(我也重新卸载安装过,过几天又是这样……)
"1705041332387.jpg" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/a735a994230e1bdcef2bb75c4e02c228.png)
"1705041332397.jpg" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/f4da2123e2c818851252adc76df49a59.png)
"1705041332405.jpg" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/f3e74f309a8d2edb4b4f076db8c7b264.png)
我目前只能往 VSCode 里拽入html的文件,文件夹拽入到资源管理器中都不显示……
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/a8b1ec8897ee04e6fcbf92be6ba5d930.png)
目前只能手动拖拽文件夹中的html文件,拖拽文件夹都不会显示任何文件
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/9671508945ed12a98d6f32af33d4bbdd.png)
办公室高手
如何在List组件中分组展示不同种类的数据?
解决措施
可以通过在List组件中使用ListItemGroup组件来展示Listitem分组,可以单独设置ListItemGroup中的header参数自定义每组的头部组件样式。
代码示例
// xxx.ets
@Entry
@Component
struct ListItemGroupExample {
private timetable: TimeTable[] = [
{
title: '星期一',
projects: ['语文', '数学', '英语']
},
{
title: '星期二',
projects: ['物理', '化学', '生物']
},
{
title: '星期三',
projects: ['历史', '地理', '政治']
},
{
title: '星期四',
projects: ['美术', '音乐', '体育']
}
]
@Builder
itemHead(text: string) {
Text(text)
.fontSize(20)
.backgroundColor(0xAABBCC)
.width('100%')
.padding(10)
}
@Builder
itemFoot(num: number) {
Text('共' + num + '节课')
.fontSize(16)
.backgroundColor(0xAABBCC)
.width('100%')
.padding(5)
}
build() {
Column() {
List({ space: 20 }) {
ForEach(this.timetable, (item: TimeTable) => {
ListItemGroup({ header: this.itemHead(item.title), footer: this.itemFoot(item.projects.length) }) {
ForEach(item.projects, (project: string) => {
ListItem() {
Text(project)
.width('100%')
.height(100)
.fontSize(20)
.textAlign(TextAlign.Center)
.backgroundColor(0xFFFFFF)
}
}, (item: string) => item)
}
.divider({ strokeWidth: 1, color: Color.Blue }) // 每行之间的分界线
})
}
.width('90%')
.height('100%')
.sticky(StickyStyle.Header | StickyStyle.Footer)
.scrollBar(BarState.Off)
}.width('100%').height('100%').backgroundColor(0xDCDCDC).padding({ top: 5 })
}
}
interface TimeTable {
title: string;
projects: string[];
}
效果如图所示:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/f64f1680766d1b6cfd7bbfbe68766903.png)
参考链接
"ListItemGroup" (https://link.segmentfault.com/?enc=wfWxzppdWXzrllJNOECBAQ%3D%3D.SRvd1ZzBfU7sJxYmI0GRRikAl2QQTuCaJqNxWrpHlX24dI8YSpKnx8Z17q9hUMxfLRX3KAnAj0vCboDbbixg9VCarO7JdndVKHJbzt7%2BDtD3iw78FtKadXLfNpuvKdG4Wo2fOAL1wBqdCR5nXK9dww%3D%3D)
办公室高手
echarts怎么设置仪表盘图表上下不留空?
似乎没相关的配置,不过这种我觉得应该设置一个"最小柱体高度",即使是 "0" 让用户也可以交互,而不是干掉
"https://echarts.apache.org/zh/option.html#series-bar.barMinHe..." (https://link.segmentfault.com/?enc=fS4GHap%2BYTtj3cVbmJ1P6A%3D%3D.ywUXHsGAqgAALbm0vFSYK%2FiNyLI2U6HEXG60gJNPmDC2WM1SxgqsWPkJL5m5ztmWo1DkoMztNTGCsdKXwrwFcTgwSBTRediDnVuFmUbJCrY%3D)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/c93dac08207881e322faa30ea14f7a77.png)
办公室高手
Spring Cache如何简化和优化?
关于spring缓存的问题:
"c1cfcce2dfe27824305d245b228613c.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/6a6352e88557eaee0aacb4648523d77e.png)
"e0d7898d75f80be3e2ff5ccc5fa86de.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/67376c3488d5d6be3b2eba456f36951e.png)
1. 类似我通过注解方式定义的缓存,我定义了设置缓存,获取缓存、删除缓存三个方法,但我感觉其中设置、删除缓存方法都很奇怪,设置缓存居然要提供返回值才能实际设置;删除缓存又是一个空的方法体。缓存是通过这种方式使用的吗?我感觉很奇怪
2. 我在 application.yml 中配置了缓存的 cache-names;然后使用 @Cachable 注解IDE还是会提示要提供 name,有办法取消这种警告吗
3. 上面获取缓存的值的方法我感觉有点复杂;先获取cache;在获取值的包装类,在获取值,而且每一步都要检查是否为null好麻烦,有更简便的做法吗
无
办公室高手
Nacos修改密码后服务无法启动的解决方法?
nacos修改密码后为什么会导致服务起不来。nacos前台页面提示user not found 。服务启动时报错,与修改的密码不匹配
成功启动服务
办公室高手
想问一下一个C语言的位运算小问题?
high:
i |= (i>>1);
i |= (i>>2);
i |= (i>>4);
i |= (i>>8);
i |= (i>>16);
high = i-(i>>1);
low
low = i - (i & (i-1));
0 都需要提前判断。
办公室高手
如何才能一个人做一个项目?
找一个跟你做的项目差不多的项目,然后照着抄,人家有什么功能你做什么功能,人家长什么样你就写什么样。自己一个人写项目最难的是没有灵感,就好像我写我的个人博客的时候那样,不知道添加什么功能,不知道该写怎样的页面样式,排列。最好找了找了七八个别人个人博客网站,别人有什么我就抄什么,觉得不好的就不要,觉得好的就抄。不是这样的话很难,因为你想功能,想UI,想实现逻辑,全部都要你自己想,你会发现,想着想着半天时间就过去了,就像我的博客写了三个月,不是我代码水平低,实在是不知道怎么写,自己做了项目之后才觉得项目经理,需求经理牛逼,丫的怎么就能够想到那么多东西呢?其实他们也可能是抄别人的,哈哈哈。
最后就是别强迫症,总想着多思考用更好的方案,其实你多参考别人的代码,你会发现别人实现也是用的很low的方法实现的,所以不要在意实现的逻辑,只需要输出的结果没问题就好,代码优化是一个无底的深渊。
办公室高手
横向U型步骤条有类似的组件?
有类似的横向U型步骤条组件,或者css实现
办公室高手
浏览器上用js怎么区分 关闭标签页还是关闭整个浏览器?
浏览器上用js怎么区分 关闭标签页还是关闭整个浏览器?
现在是想在关闭整个浏览器的时候清空登录信息,关闭标签页的时候不清空?(使用windows,chrome)
办公室高手
使用AJAX从node.js本地服务器请求文本 运行一直报错?
使用AJAX从服务器请求文件,运行报错
Document
// const myobj={name:"Bill",age:21,city:"Guangzhou"};
// const myJSON=JSON.stringify(myobj);
// window.location="/demo_json.php?x="+myJSON;
// 来自服务器的 JSON 可以使用 AJAX 请求从服务器请求 JSON
const xhttp=new XMLHttpRequest();
xhttp.onreadystatechange=function(){
if(this.readyState==4&&this.status==200){
const myobj=JSON.parse(this.responseText);
document.getElementById("d1").innerHTML=myobj.name
}
}
xhttp.open("GET","json.txt");
xhttp.send();
第一次运行时忘记把上面三条代码注释掉,就直接运行,结果浏览器报错
https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241011/dff3afdd2746f481902463161a344739.png
第二次注释了上面的代码,保存之后,重启了node.js本地服务器,再运行几遍,依旧显示之前的错误。为什么会一直运行已经注释了的代码请求?
还有修改了服务器的json文本,运行AJAX请求,responseText获得的结果依旧是原来未修改的文本,这是为什么
办公室高手
如何在element ui中的Tree 树形控件里添加图片?
第一种
参数 | 说明 | 类型
---|---|---
render-content | 树节点的内容区的渲染 Function | Function(h, { node, data, store }
export default {
methods:{
renderContent(h, { node, data, store }) {
return (
{node.label}
);
}
}
}
第二种
{{ node.label }}
办公室高手
spring RestTemplate报错, read Timeout Connection reset?
readTimeOut:那就增加读取超时时间,这一般是服务器处理比较久导致的
Connection reset:一般是服务器没有给你写响应直接断开了连接,我在上传文件时,文件超出配置的大小,http协议就会出现Connection
reset,服务器先要接收完请求,再去写响应。上传文件超出大小,服务器直接说我就不接收了拜拜
办公室高手
js同步代码中没有执行try/catch代码?
通常情况下不会在 "new Promise()" 里用 "async" 函数。如果想用 "await",可以不用 "new Promise()"
直接把外层函数定义为 "async" 函数,比如
const request = async (url: string, method: string, data?: any) => {
// ^^^^^ 声明为 async 函数
if (isRefreshToken) return
// 判断token超时,刷新token
if (Store.getters.expiresTime && new Date().getTime() >= Store.getters.expiresTime) {
await refreshData()
// ^^^^^^^^^^^^^^^^^^^ 这里如果发生错误,会 reject 穿透出去
return
}
}
既然用的 TypeScript,会发现 "request" 的返回类型是 "Promise",和 "return new Promise(...)" 的返回类型是一致的。如果确实要用 Promise 对象,应该这样
let isRefreshToken = false
const request = (url: string, method: string, data?: any): Promise => {
return new Promise((resolve, reject) => {
// ^^^ 不要 async,内部也不要用 await(不赞成 await 和回调混用)
if (isRefreshToken) return
// 判断token超时,刷新token
if (Store.getters.expiresTime && new Date().getTime() >= Store.getters.expiresTime) {
refreshData().then(resolve, reject);
// ^^^^^^^^^^^^^^^^^^^^^^ 将 refreshData 的运行和 resolve, reject 绑定起来
return
}
});
}
const refreshData = async () => { }
所以两种方式,一种是直接定义 async 函数,另一种是在 new Promise() 里正确调用 resolve 和 reject。
顺便说一下,这不是“同步”,是异步。就算是用 await,也是异步程序的“同步写法”,而不是同步。
办公室高手
react中使用useRef调用子组件的方法更改状态的问题为什么会再次初始化子组件的状态?
1. "disabled"从哪里来?
2. "btnDisabled"没用到,"setBtnSta"的意义是什么?
3. "getDisabledLabel"没有用来作为"useEffect"的依赖,用"useCallback"的目的是什么?
办公室高手
phpstudy卸载了,后来才想起数据库数据还在里面?
理论上是没问题,如果实在不行,你可以这样处理
1:删除表drop table tablename
2:在建表语句 末尾加上 ROW_FORMAT=compact;
3:分离表空间ALTER TABLE table_name DISCARD TABLESPACE;
4:复制,覆盖对应的.ibd文件
5:导入表空间ALTER TABLE table_name IMPORT TABLESPACE;
办公室高手
如何正确使用 Umi Max 中的 useModel?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241009/8189760685e05d9d401e941341ebac6f.png)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241009/a395230502c58473762dcb4eb166202a.png)
命名空间是不是应该写成"System.useTestModel"?