梦想缔造狮
IP:
32关注数
0粉丝数
40获得的赞
工作年
编辑资料
链接我:

创作·51

全部
问答
动态
项目
学习
专栏
梦想缔造狮

有没有好用的电子教室软件?

1.老师可以把自己的屏幕主动给学生看,学生只能看。 2.老师可以查看某个学生的屏幕,也可以操作。 3.支持局域网内使用。 4.学生人数支持30个。 5.支持下发作业和收作业。
13
1
0
浏览量344
梦想缔造狮

如何让 docker build 的时候,不要联网更新基础镜像?

除非你显式指定了 "--pull" 参数,否则 "docker build" 只会用本地的镜像,不会联网检查更新的(前提是你本地确实有这个 tag)。 你这里的“好像”是根据什么判断出来的?
0
0
0
浏览量0
梦想缔造狮

es6中的数组转换,关于Array.from()的一些疑问?

11 22 33 let lis = document.querySelectorAll('li'); console.log([...lis]); let liC= Array.from(lis,ele=>ele.textContent); console.log(liC); 结果: "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250105/4f58d4f465f6ffaf7828b3b8ea1d542a.png) 问题: 1."lis,ele=>ele.textContent"中我把"ele.textContent"换成了"lis.textContent"结果出来的是一个undefine的集合,是为什么?"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250105/c8453909e097609e3e4524c98b16e375.png) 2."lis,ele=>ele.textContent"我是否可以理解为"Array.from(arr,function)",然后返回元素的文本内容? 3.该怎么理解lis和ele之间的关系呢?(因为看到很多案例都是说from可以传入两个参数,但是好像返回的都是第二个参数的东西,这一块不是很理解) 理论知识学的很浅,上手就有点迷茫,感谢帮忙指导,帮我恶补,非常感谢
11
1
0
浏览量265
梦想缔造狮

做好的项目部署上线后,在服务器上拷贝地址到另一台服务器(同一局域网下),为何报错不显示?

后端部署到服务器上的地址写的localhost,改为IP地址就可以了。(后端问题总是前端背锅😶)
0
0
0
浏览量0
梦想缔造狮

输入框滚动加载与搜索如何进行封装?

技术 vue2 项目 框架是 antdv 1.7.8 我项目中有很多表单,表单中有很多Select 选择器 选择器的内容是项目中的某一个列表,有很多这种下拉,在不同的界面。 我的问题是,单独的每一个下拉框都可以进行 远程搜索与滚动加载,但是接口是不同的,所以如何进行封住一下写一个,所有的下拉框都能用。 代码demo如此 {{item.industry_name }} {{ item.ent_name}} import { orgSelectAPI, orgEntSelectAPI, } from "@/api/enterprise.js"; import _ from "lodash"; export default { data() { return { queryParam: {}, industryList: [], // 产业下拉数据 industryCount: 10, // 产业默认10个 industrySize: 0, // 总条数数据改变时候必须低于这个值 industrySearch: "", // 远程搜索值 industryEntList: [], entCount: 10, entSize: 0, industryEntSearch: "", }; }, created() { this.getIndustryList(); this.getIndustryEntList(); }, methods: { // 产业下拉加载 handlePopupScroll: _.debounce(function (e) { const { target } = e; const { scrollTop, scrollHeight, offsetHeight } = target; if ( this.industryCount = scrollHeight ) { this.industryCount = Math.min( this.industryCount + 10, this.industrySize ); this.getIndustryList(this.industrySearch); } }, 500), // 远程搜索 handleSearch: _.debounce(function (e) { this.industrySearch = e; this.getIndustryList(this.industrySearch); }, 500), // 获取产业数据 async getIndustryList(e) { let res = await orgSelectAPI({ page: 1, rows: e ? 0 : this.industryCount, name: e, }); this.industry_id = ""; this.industryList = []; this.industrySize = res.data.total; this.industryList = res.data.rows; }, handleSearchEnt: _.debounce(function (e) { this.industryEntSearch = e; this.getIndustryEntList("", e); }, 500), handlePopupScrollEnt: _.debounce(function (e) { const { target } = e; const { scrollTop, scrollHeight, offsetHeight } = target; if ( this.entCount = scrollHeight ) { this.entCount = Math.min(this.entCount + 10, this.entSize); this.getIndustryEntList(this.industry_id, this.industryEntSearch); } }, 500), // 获取企业数据 async getIndustryEntList(e, name) { let res = await orgEntSelectAPI({ page: 1, rows: this.entCount, industry_id: e, name, }); this.industryEntList = [] this.industryEntList = res.data.rows; this.entSize = res.data.total; }, }, }; 像这种数据我有很多,这种下拉出现一个我就得定义一个 count与 size 还有搜索与滚动的函数,写起来很麻烦,但是接口又不相同,我该如何进行封装一下,让这个东西写一次,后边的都能用 求大佬给个封装思路,接口与数据如何搞 经过大佬提示之后封装如下 {{ item[labelKey] }} import _ from "lodash"; export default { props: { showPlaceHolder: '', apiFunction: { type: Function, required: true, }, queryParams: { type: Object, default: () => ({}), }, valueKey: { type: String, default: 'id', }, labelKey: { type: String, default: 'name', }, initialCount: { type: Number, default: 10, }, }, data() { return { selectedValue: undefined, showList: [], pageCount: this.initialCount, // 每页多少条 page: 1, // 当前第几页 allPage: 0, // 总共有多少页 pageTotal: 0, // 总共有多少条 itemSearch: "", // 搜索框搜索输入值 countNum: 0, // 计数器 }; }, watch: { selectedValue(newV) { this.$emit('getValue', newV) this.itemSearch = undefined this.getList(); }, queryParams: { deep: true, handler(newV, oldV) { // 表单重置 if (oldV[this.valueKey] && !newV[this.valueKey]) { this.selectedValue = null } } } }, created() { if (this.queryParams && this.queryParams[this.valueKey]) { // 有值就表示回显数据,回显只查当前条 this.selectedValue = this.queryParams[this.valueKey] this.byIdGetList(this.queryParams) } else { this.getList(); } }, /** * 引用 * import popupScrollSelect from "@/views/common/components/popupScrollSelect.vue"; * formRight.facility_id = e"> * 现在需要修改成分页请求数据,第一次请求 第1页,10条 第二次请求 2页,10条,将 第二页与第一页的数据拼接起来 * 设计思路,每页十条得到总页数,向上取整,页码每次加一,直到加到最大值,每次得到数据之后,push到原始展示数组中。 * */ methods: { async getList(searchValue = "", page) { const response = await this.apiFunction({ page: page ? page : 1, rows: searchValue ? 0 : this.pageCount, name: searchValue, }); if (searchValue) { this.showList = response.data.rows; } else { // 无法判断上次数据是搜索之后的 showList 还是下拉之后的数据,需要去重才能赋值 const mergedArray = [...this.showList.concat(response.data.rows)]; this.showList = _.uniqWith(mergedArray, _.isEqual) } // 总页数,总条数只需要计算一次 if (this.countNum == 0) { this.pageTotal = response.data.total; this.allPage = Math.ceil(this.pageTotal / this.pageCount) // 最多有多少页 this.countNum++ } }, handleSearch: _.debounce(function (value) { this.itemSearch = value; this.getList(this.itemSearch); }, 500), handlePopupScroll: _.debounce(function (e) { const { target } = e; const { scrollTop, scrollHeight, offsetHeight } = target; if ( this.page = scrollHeight ) { // this.pageCount = Math.min(this.pageCount + 10, this.pageTotal); this.page = Math.min(this.page + 1, this.allPage); this.getList(this.itemSearch, this.page); } }, 500), async byIdGetList(queryParams) { const response = await this.apiFunction(queryParams); if (!this.showList.some(item => JSON.stringify(item) == JSON.stringify(response.data.rows[0]))) { this.showList = [...this.showList, ...response.data.rows] } }, }, };
16
1
0
浏览量205
梦想缔造狮

盗版windows的标志是什么?

查到一些文章,说可以用命令行,查看windows是否属于正版。 "命令行 slmgr.vbs /dlv" "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241220/cddfd7073ad2bbfcf007155faf1542fa.png) 这是一个正版的截图。 "Capture.PNG" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241220/346716920b09dee26c0780b568092aa8.png) 这个就是盗版吧? License Status:Notification notification 不是授权的意思。 这样查看盗版状态是官方推荐的。 激活码或者激活工具,可以使得 许可证状态变成已授权吗? 如果是激活码激活的windows,也不是正版吧?此时如何查看是否属于正版呢?
6
1
0
浏览量258
梦想缔造狮

pyqt使用process和pipe打开nginx,我就是想实现xampp类似功能或者phpstudy,如何实现?

设计一个PyQt界面,用QProcess类来启动和管理Nginx进程: import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton from PyQt5.QtCore import QProcess class MyApp(QWidget): def __init__(self): super().__init__() self.initUI() self.process = QProcess(self) self.nginx_running = False def initUI(self): self.start_stop_btn = QPushButton('启动Nginx', self) self.start_stop_btn.clicked.connect(self.toggle_nginx) self.start_stop_btn.resize(self.start_stop_btn.sizeHint()) self.setGeometry(300, 300, 300, 200) self.setWindowTitle('Nginx Controller') self.show() def toggle_nginx(self): if self.nginx_running: self.process.terminate() self.nginx_running = False self.start_stop_btn.setText('启动Nginx') else: self.process.start('path_to_nginx', ['-c', 'path_to_nginx_conf']) self.nginx_running = True self.start_stop_btn.setText('停止Nginx') if __name__ == '__main__': app = QApplication(sys.argv) ex = MyApp() sys.exit(app.exec_()) path_to_nginx和path_to_nginx_conf换成你的Nginx的可执行文件路径和配置文件路径。 或者用楼上说的pid: import sys import os import signal from PyQt5.QtWidgets import QApplication, QWidget, QPushButton class MyApp(QWidget): def __init__(self): super().__init__() self.initUI() self.pid = None def initUI(self): self.start_stop_btn = QPushButton('启动Nginx', self) self.start_stop_btn.clicked.connect(self.toggle_nginx) self.start_stop_btn.resize(self.start_stop_btn.sizeHint()) self.setGeometry(300, 300, 300, 200) self.setWindowTitle('Nginx Controller') self.show() def toggle_nginx(self): if self.pid: os.kill(self.pid, signal.SIGTERM) # 使用SIGTERM信号结束进程 self.pid = None self.start_stop_btn.setText('启动Nginx') else: self.pid = os.spawnl(os.P_NOWAIT, 'path_to_nginx', 'nginx', '-c', 'path_to_nginx_conf') self.start_stop_btn.setText('停止Nginx') if __name__ == '__main__': app = QApplication(sys.argv) ex = MyApp() sys.exit(app.exec_())
0
0
0
浏览量0
梦想缔造狮

如何对vue3 里响应式数组 ref([]) 的数据进行重构赋值?

如题,将[{},{},{}] 转换为[[{},{},{}],[{},{},{}]] let list = ref([ { number: "001", }, { number: "002", }, { number: "003", }, { number: "004", }, { number: "005", }, { number: "006", }, { number: "007", }, { number: "008", }, { number: "009", }, { number: "010", }, { number: "011", }, { number: "012", }, { number: "013", }, { number: "014", }, { number: "015", }, { number: "016", }, { number: "017", }, { number: "018", } ]); 转换为: let list = ref([ [ { number: "001", }, { number: "002", }, { number: "003", }, { number: "004", }, { number: "005", }, { number: "006", }], [{ number: "007", }, { number: "008", }, { number: "009", }, { number: "010", }, { number: "011", }, { number: "012", }], [{ number: "013", }, { number: "014", }, { number: "015", }, { number: "016", }, { number: "017", }, { number: "018", }] ]);
0
1
0
浏览量16
梦想缔造狮

为什么我vue组件已经写好了,但就是在htm中使用不了。浏览器也没有报错,这是为什么???

import NavbarComponent from './components/NavbarComponent.vue'; export default { name: 'App', components: { NavbarComponent, }, }; Home About Contact export default { name: 'NavbarComponent', }; /* 样式可以根据你的需求自定义 */ .top-nav { background-color: #333; color: #fff; padding: 10px; } .top-nav ul { list-style-type: none; padding: 0; } .top-nav ul li { display: inline; margin-right: 20px; } .top-nav ul li a { color: #fff; text-decoration: none; } // main.js import { createApp } from 'vue'; import App from './App.vue'; import NavbarComponent from './components/NavbarComponent.vue'; const app = createApp(App); app.component('NavbarComponent', NavbarComponent); app.mount('#app'); Title 测试 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241212/2abdbd23b064e173489786fc5ee3674a.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241212/32f1951e096aac6ef4bfa3d4df1645d4.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241212/acf00a6f3b6ff0e795af117fd71a2a61.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241212/8f73385487a78e687555863a181cc945.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241212/bd54760263e5354398fc1f47276c335c.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241212/bc6f388efe48b3ae0d8bad939c065724.png)
0
1
0
浏览量15
梦想缔造狮

创建新的vue3项目,在script中写watch的时候发现所有vue相关的导入提示都消失了?

node_modules 安装了么?
0
0
0
浏览量0
梦想缔造狮

为什么虚拟线程无法在虚拟线程池中执行?

环境: java21 问题: methods5不会输出log.info的内容, methods6正常打印log.info的内容 private static void methods5() { ThreadFactory tf = Thread.ofVirtual().factory(); try (ExecutorService executor = Executors.newVirtualThreadPerTaskExecutor()) { Thread vt = tf.newThread(() -> log.info("vt task executed.")); for (int i = 0; i log.info("thread task executed.")); for (int i = 0; i < 5; i++) { try { executor.submit(thread).get(); } catch (InterruptedException | ExecutionException e) { // 处理异常 } } } }
0
1
0
浏览量18
梦想缔造狮

node+express使用multer上传的图片怎么让前端显示?

很明显上传成功,存储成功,但是你本地使用的时候,用的是相对路径,所以浏览器会去前端项目的路径里找图片,当然是找不到的。 解决方案就是使用后端的路径。或者通过某种方式进行映射也可以,看你准备怎么部署。
0
0
0
浏览量0
梦想缔造狮

这种轮播图应该怎么做?

网页轮播放吗,后台上传图片会自动轮播的
0
0
0
浏览量0
梦想缔造狮

linux 下,为什么明明存在的文件,执行却说 No such file or directory ?

╭─pon@T4GPU ~/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin ‹master› ╰─➤ file media_match media_match: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.8, with debug_info, not stripped ╭─pon@T4GPU ~/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin ‹master› ╰─➤ file ./media_match ./media_match: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.8, with debug_info, not stripped ╭─pon@T4GPU ~/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin ‹master› ╰─➤ ./media_match zsh: no such file or directory: ./media_match ╭─pon@T4GPU ~/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin ‹master› ╰─➤ ./media_match 127 ↵ ╭─pon@T4GPU ~/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin ‹master› ╰─➤ ./"media_match" 130 ↵ zsh: no such file or directory: ./media_match ╭─pon@T4GPU ~/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin ‹master› ╰─➤ ldd media_match 127 ↵ not a dynamic executable 换成 bash 试了一下 pon@T4GPU:~/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin$ ll total 1744 drwxrwxr-x 2 pon pon 4096 Nov 2 09:07 ./ drwxrwxr-x 5 pon pon 4096 Nov 2 09:07 ../ -rwxrwxr-x 1 pon pon 666068 Nov 2 09:07 dna_status* -rwxrwxr-x 1 pon pon 983 Nov 2 09:07 match_graph* -rwxrwxr-x 1 pon pon 1281 Nov 2 09:07 match_plot* -rwxrwxr-x 1 pon pon 260796 Nov 2 09:07 media_match* -rwxrwxr-x 1 pon pon 834082 Nov 2 09:07 media_matchd* -rwxrwxr-x 1 pon pon 3959 Nov 2 09:07 plot_dna_match* pon@T4GPU:~/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin$ ./media_match bash: ./media_match: No such file or directory pon@T4GPU:~/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin$ pwd /home/pon/code/work/pon/vt/svn_ppgraph/trunk/match_graph/bin 不理解,我的机器是 ubuntu22.04 ,这个程序是一个十几年前的程序,难道和 glibc 库的版本什么的有关系?
0
1
0
浏览量16
梦想缔造狮

js将树状数组按照条件分成两个数组?

const arr = [ { id: 1, date: "2016-05-02", name: "王小虎", address: "上海市普陀区金沙江路 1518 弄" }, { id: 2, date: "2016-05-04", name: "王小虎", address: "上海市普陀区金沙江路 1517 弄" }, { id: 3, date: "2016-05-01", name: "王小虎", address: "上海市普陀区金沙江路 1519 弄", children: [ { id: 31, date: "2016-05-01", name: "王小虎", address: "上海市普陀区金沙江路 1519 弄", }, { id: 32, date: "2016-05-01", name: "王小虎", address: "上海市普陀区金沙江路 1519 弄" }, { id: 33, date: "2016-05-01", name: "王小虎", address: "上海市普陀区金沙江路 1519 弄" } ] }, { id: 4, date: "2016-05-03", name: "王小虎", address: "上海市普陀区金沙江路 1516 弄" }]; 以上数组根据id分成两个数组 const condition = { 2: [], 3: [31, 33] } // 分成 const arr1 = [ { id: 1, date: "2016-05-02", name: "王小虎", address: "上海市普陀区金沙江路 1518 弄" }, { id: 3, date: "2016-05-01", name: "王小虎", address: "上海市普陀区金沙江路 1519 弄", children: [ { id: 32, date: "2016-05-01", name: "王小虎", address: "上海市普陀区金沙江路 1519 弄" }, ] }, { id: 4, date: "2016-05-03", name: "王小虎", address: "上海市普陀区金沙江路 1516 弄" }]; const arr2 = [ { id: 2, date: "2016-05-04", name: "王小虎", address: "上海市普陀区金沙江路 1517 弄" }, { id: 3, date: "2016-05-01", name: "王小虎", address: "上海市普陀区金沙江路 1519 弄", children: [ { id: 31, date: "2016-05-01", name: "王小虎", address: "上海市普陀区金沙江路 1519 弄", }, { id: 33, date: "2016-05-01", name: "王小虎", address: "上海市普陀区金沙江路 1519 弄" } ] }] 请问应该怎么解决?
0
1
0
浏览量13
梦想缔造狮

前端怎么预览pdf 试了几种方法都不太行 有没有别的办法?

前端怎么预览pdf iframe和一些库 要么完全打不开 白屏 要么只能看第一页 企微自建应用
0
1
0
浏览量19
梦想缔造狮

层层嵌套的对象,如何拿到最底层的值?

你直接看lodash的源码 "https://www.lodashjs.com/docs/lodash.set" (https://link.segmentfault.com/?enc=Ey8lk2zHic%2BLWtp4gGySqg%3D%3D.dMrcUt8CFQy6jbQ7%2F3E9lw%2BXJuIzvV7BmBngdIYfp5Qi4k9hsluDXO6OpJOUr7oj) 你项目里直接安装lodashjs也可以 或者直接去吧 set 方法的源代码拷贝到项目里就行了 没必要自己写
2
0
0
浏览量0
梦想缔造狮

Java 多个 sheet 怎么合并到一个 Excel 里,并且转 Html?

可以在后端(我这里以java为例),用poi(easyPoi)、easyExcel等读取出不同sheet的数据,组装成一个集合,直接在服务端渲染的话就用模板引擎自己写html,for循环填充进去就可以了,前端渲染就可以转成json格式在前端请求的时候返回给前端,由前端框架写样式进行处理。
0
0
0
浏览量0
梦想缔造狮

使用okHttp3发送sse请求,当事件为finish的时候,如何接收附加的数据?

SSE 的规范中明确指出,每个事件的结构中的 field 只能是以下几个取值: * event * data * id * retry 所有其他的字段名都会被忽略。 «"https://developer.mozilla.org/zh-CN/docs/Web/API/Server-> sent_..." (https://link.segmentfault.com/?enc=QB7pmkpN%2BIRpe8ly4Ih0Qw%3D%3D.m8g%2B7EsFQowdp0l99Hz1zJUDQPuwzioGa1LjO3SB66ZKuMOHKK5YaPkrbMV3a2LVUlkR4s9jDeVBKhrwI6Ewjgx99ckFHHzK6pdMi%2BNzgd5cO9PcNZuDs%2BPPJDp3rwD78u8HsTHJhAes05bV%2Fftsbg%3D%3D)» 显然 OkHttp 在解析事件时遵守了此规范。从源码中我们也可以看出这一点: «"https://github.com/square/okhttp/blob/okhttp_3.14.x/okhttp-> sse/src/main/java/okhttp3/internal/sse/ServerSentEventReader.java#L55-L102" (https://link.segmentfault.com/?enc=gQoLM7mvNymzm%2FDk%2BCo%2BWg%3D%3D.j9UuypYX19or6Equq9X7o0gbfLamO3DXTUV70R%2F%2F0lq8qs3z3uFKQni5Ft9S1iNwXB4qXo7lxPHN%2F2RcvNdTgw%2FL%2FcbaOhs%2FoeOjwKPVkHBPUoB9H%2FK2QNkDQdKuNgEaI6FHgCrhom13gqyhgBQUbMFKnZrqxcrkY7%2BhThK9OrD8vMcEmvV0QwoPhv6zQYmq)» 所以你这里的问题是上游系统使用了非标准的 SSE 协议。如果上游服务不做修改的话,你只能从底层的 HttpClient 自己动手撸一个 Parser 来处理这种特殊场景了。
0
0
0
浏览量0
梦想缔造狮

what is python dangling circular ref?

我不怎么写python,但我觉得copilot chat讲得还可以: «这段代码是Python的WSGI(Web Server Gateway Interface)应用程序的一部分。start_response函数是WSGI应用程序的核心部分,它用于设置HTTP响应的状态和头部。 "avoid dangling circular ref"这句注释是指避免形成悬空的循环引用。在Python中,循环引用是指两个或更多的对象互相引用,形成一个闭环。这可能会导致内存泄漏,因为Python的垃圾收集器无法回收这些对象。 在这段代码中,exc_info是一个包含异常类型、异常值和追踪信息的元组。如果exc_info在函数结束时仍然引用这些对象,那么这些对象就不能被垃圾收集器回收,因为exc_info是一个全局变量,它的生命周期比这些对象长。为了避免这种情况,代码在finally块中将exc_info设置为None,断开了对这些对象的引用,使得它们可以被垃圾收集器回收。这就是"avoid dangling circular ref"的含义»
0
0
0
浏览量0
梦想缔造狮

Python 怎么实现类似 PHP array_column 方法的效果?

Python 怎么实现类似 "PHP" "array_column" 方法的效果: nested_list = [ {'id': 1, 'name': 'Alice', 'age': 25}, {'id': 2, 'name': 'Bob', 'age': 30}, {'id': 3, 'name': 'Charlie', 'age': 35}, ] 把所有的 "id" 列的值提取出来 甚至把别的字段的值作为键名 Python 怎么实现类似 "PHP" "array_column" 方法的效果:
0
1
0
浏览量18
梦想缔造狮

如何修改代码以通过验证?

https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241028/649edcdd9fc9aef6c831899ee3861ab7.png 该怎么修改代码 验证通过
0
1
0
浏览量12
梦想缔造狮

Vue ref 属性在不同环境下的行为差异?

区域 位置 操作 const ref1 = ref(); const ref2 = ref(); const ref3 = ref(); const refApi = { ref: 'ref3' }; console.log(ref1, ref2, ref3); 在开发环境下 "ref1, ref2, ref3" 皆符合预期指向 "span" 。 但是打包后的生产环境就只有 "ref1" 正常指向 "span" , "ref2, ref3" 皆为 "undefined"。 为什么表现不一致?
0
1
0
浏览量24
梦想缔造狮

为什么同样的 html ,线上打不开百度的 url?

为什么同样的 html ,线上打不开百度的 url 但是保存为本地 html,然后在浏览器打开本地 html 却可以显示百度 url 图片 276b206633e200641d3f9ddabc657888 image ✅ 鉴于已开启内容拦截功能,而这个请求来自跟踪器,已拦截“"https://pics1.baidu.com/feed/7c1ed21b0ef41bd54d224b9c53ecdcc1..." (https://link.segmentfault.com/?enc=gWs7vB71AvGonE63n%2Bc4Dg%3D%3D.1X7ROQpv0dTIV5hV3hZx1tqiQhkURKUQes23slcbIw56Ma0kDRBqvDxp4MvwTW8Dal6F3lrC4%2BPbYG9b4gzLf65udrqSHuIdOJ2T9JOfY%2BTkT%2FyIZGrs9Ez4Wvwnbxybvtf5U5VUyufdD%2FfHH%2Fg%2BrjW%2BXkZfgbuBsd9U2nZx81E%3D)”对 Cookie 或存储空间的访问请求。 "图片.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241026/a356c2b840d29ee47c38dddb24e5541c.png) "图片.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241026/4bfae7648a96d54248f47c92f8401454.png) 是百度在作恶吗?怎么解决呢? *** "图片.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241026/8b873ef28605828ebbd7f5f9db3161d7.png) 我把这些都关了,还是一样不行 是 firefox 在拦截百度?还是百度在拦截我? 我这里只是访问一个图片,为什么会出现 cookie 问题?访问图片又不是访问带 js 的 html,并不会有危险操作呀?
0
1
0
浏览量15
梦想缔造狮

vue3导出试卷到word的做法?

想实现一个vue导出题库的内容到word里面的功能,但是导出的内容要不格式不对,要不就是被截断,有什么好的方法来做这个功能嘛?
0
1
0
浏览量10
梦想缔造狮

el-table中的展开行图标如何改到最后一列显示?

1.把自带的通过css隐藏 2.通过单元格template加到后面,通过展开等方法去控制图标展开收起
0
0
0
浏览量0
梦想缔造狮

Gradle打包时如何正确包含依赖包?

应该是没装插件
0
0
0
浏览量0
梦想缔造狮

该怎么从netfilter勾出来的报文里读取数据?

这个包打印的没啥问题,应该是你打错包了。 TCP协议是有三次握手的,有syn、ack、fin、rst这些控制报文,所以你判断源端口是不是12345,并不能说明这个包一定就是你想要的带着ABC数据的报文。通过打印结果来看,这就是一个ACK的空包。 1. 第一个字节是字符E,16进制是0x45,说明skb->data指向的是一个IPv4头,IP头部长度为20字节。这个是符合预期,没什么问题。 2. 然后看IP头的第三、四个字节,这个字段是整个IP包的长度,字符';'的16进制是0x3B,换算称10进制就是59,也就是说明你这个包的整长度就是59,ip头已经占了20了,留给tcp的还有39个字节了。 3. 5、6、7、8这四个字节是IP报文的ID、Flag、Fragment字段,跳过。 4. 第九个字节是TTL,字符‘@’的16进制是0X40,是LINUX内核默认的64,说明你这个包还没经过Forwad阶段,所以猜测你这个hook应该是挂的PRE_ROUTING。 5. 第10个字节是协议号,6代表TCP,也符合预期。 6. 跳过2个字节的校验和,剩下8个字节是源和目的IP地址,127.0.0.1到127.0.0.1,说明你这个包是从lo口发给lo口的测试包。 7. 接下来是tcp头,21、22字节是源端口,字符0和字符9换算成10进制就是12345,符合预期。 8. 23、24字节是目的端口,换算下来也符合预期。 9. 接下来跳过8个字节的Ack和Seq,第33、34个字节是0X80和0X18,8表示tcp数据的偏移,4字节为单位,说明这个包的tcp头长度是32。0X18是TCP的Flag,说明这个包打着ack和psh的标记。 10. 从52字节开始,全是0,说明这是个空包。 综上,打印没啥问题,应该是打印错包了。另外你计算end的那行我猜你的本意应该是找到报文结束吧?代码写错了,head和tail这俩是指针,指针相加不是代表报文结束,所以你这个printk打印了后面的一堆的0, 如果不考虑非线性数据: for(c = skb->data, c tail; c++) { printk(...); }
0
0
0
浏览量0
梦想缔造狮

如何解决移动端页面出现滑动条和空白条问题?

为什么移动端设置了宽度为430px,且所有的内容的宽度也都在430px以内,还是会出现手机端左右滑动条?且还会出现右边有一长条竖着的空白条无法删除。"如图右侧这个竖条" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241011/03ba19f1ff0e530c26d6cf296772bcd2.png) 网址:www.ugug.com 希望能够将这个竖条以及横向左右滑动条删除
0
1
0
浏览量133
梦想缔造狮

证书无效问题?

nginx 证书问题 已经使用自签名证书生成了一个证书, 并配置到 nginx 中了, 域名 CN 也配置正确了 然后在客户端 hosts 文件中也配置了对应映射 导入了对应的证书文件 然后访问域名, 说证书无效, 每次都到这里卡住, 不知道这证书哪里无效了, 我都导入到了受信任的根证书里面了, 并且在 chrome 的证书管理中也能看到 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241011/537cd1efe1ed8851f8a599113321e112.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241011/e71286ec39a923510023f7b5af9fb374.png)
0
1
0
浏览量157
梦想缔造狮

vscode 文件--首选项--设置 报错 cannot read properties of undefined (reading 'el')?

"ctrl+p" 搜索文件 settings.json 改成默认配置 { "vsicons.dontShowNewVersionMessage": true, "redhat.telemetry.enabled": true, "workbench.settings.useSplitJSON": true, "cSpell.languageSettings": [] } 就好了 晕死
0
0
0
浏览量0
梦想缔造狮

一个关于 for 和 onclick() 事件的问题?

你换个思路,在你的代码中有几个i呢,是不是只有一个,所有当for循环结束i的值也只能是一个,因为i一个变量不可能同时又是1又是2又是3
0
0
0
浏览量0
梦想缔造狮

如何让伪元素的宽度适应文字内容的同时受到最大宽度的限制,且在小于最大宽度时不自动换行,大于最大宽度时才换行?

如何让伪元素的宽度适应文字内容的同时受到最大宽度的限制,且在小于最大宽度时不自动换行,大于最大宽度时才换行? 这是用React封装Tooltip组件时遇到的一个问题,我的思路是给tooltip下的第一个子元素添加::before伪元素,当hover时tooltip出现。tooltip组件的定义如下: import "./tooltip.css" function Tooltip({ title, children }) { if (Array.isArray(children)) { throw new Error("Tooltip can only have one direct subcomponent"); } window.c = children; return ( {children} ) } export default Tooltip; tooltip.css代码如下: .tooltip-container { --tooltipContent: "2024年2月2日, 128次浏览"; --tooltipMargin: 15px; --tooltipVisibility: hidden; --tooltipScale: 0.1; --tooltipOpacity: 0.2; } .tooltip-container>:first-child { border: 1px dashed red; position: relative; box-sizing: border-box; } .tooltip-container>:first-child:hover { cursor: pointer; --tooltipVisibility: visible; --tooltipOpacity: 1; } .tooltip-container>:first-child::before { color: white; background-color: #000; display: inline-block; content: var(--tooltipContent); position: absolute; padding: 8px; border-radius: 5px; max-width: 300px; width: fit-content; white-space: nowrap; left: 50%; bottom: calc(100% + var(--tooltipMargin)); transform: translateX(-50%); visibility: var(--tooltipVisibility); opacity: var(--tooltipOpacity); transition: all 0.15s; z-index: 9999; } .tooltip-container>:first-child::after{ content: ""; border: 5px solid transparent; border-top-color: #000; position: absolute; left: 50%; transform: translateX(-50%); top: calc(-1 * var(--tooltipMargin)); visibility: var(--tooltipVisibility); opacity: var(--tooltipOpacity); transition: all 0.15s; z-index: 9999; } 组件使用方式如下: function App() { return ( ) } 我想要的效果是,类似与ant design的tooltip, 当文字较少时正常显示,即使有分词也不换行,当文字较多时在最大宽度处换行。 目前我的问题是,若使用"white-space: nowrap;",则文字较少时正常,但文字超过最大宽大后不会换行而是被隐藏, 如下图所示: "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241010/2c830ac785fde857bb1621b48c62e2b7.png) 若使用"word-wrap: break-word;"或"overflow-wrap: break-word;", 则会在文字较少并遇到分词处自动换行,如下图所示: "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241010/feb43cf9c1d0d9074fd917eebb995665.png) 想求助各位大佬该怎么实现?
0
1
0
浏览量125
梦想缔造狮

vue element-plus 下拉菜单嵌套选择器 选择器自动收起 无法选择 如何解决?

el-dropdown与el-select嵌套使用,下拉菜单内的选择器打开后,鼠标移向选项会直接收起选择器。 以下为问题代码 import { ArrowDown } from '@element-plus/icons-vue' import { ref } from 'vue' --> {{ item.name }} export default { data() { return { name : ref('') } }, props: { menuItems : [] }, methods: { onChangeVisible(visible) { this.$emit('changeMenuVisible',visible); // console.log(visible); } } } .example-showcase .el-dropdown-link { cursor: pointer; color: var(--el-color-primary); display: flex; align-items: center; } "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241009/259d0bf0e916a30e0141500daa62a510.png) 如图所示,若鼠标想移至选项进行选择,选择器会直接收起。 尝试将下拉菜单改成静态菜单,发现选择器能正常选择不会自动收起。 但需求是使用下拉菜单。。。 更改代码部分如下 {{ item.name }} 静态菜单截图 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241009/81546eb059832b5e4c5bbbfd15db842d.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241009/c0dec8971793254d2ffe766b688efeeb.png)
0
1
0
浏览量183
梦想缔造狮

git 对比不同分支?

git 不同分支对比代码,能使用BCompare 对比吗? git 不同分支对比代码,能使用BCompare 对比吗?记得有一次看过使用工具对比的办法,直接输入分支,就能生成一套目录,然后对比,效率很高,现在都是把不同分支下载下来对比,好麻烦 想实现输入命令就能直接对比不同分支的效果有没有办法呢?
0
1
0
浏览量155
梦想缔造狮

MySQL发现诡异情况,是我写SQL的姿势不对吗!关于日期匹配和随机月份?

你现在这这样的 SQL ,where 条件中,随机日期范围的那一部分,在每次 where 的时候都会执行一次 RAND ,所以就会有问题,要解决这个问题,那就要使得这个 RAND 只执行一次,如果是在 MySQL 8 中,可以使用 With 语句。 with mo1 as (select DATE_FORMAT(DATE_ADD('2023-11-01', INTERVAL FLOOR(RAND() * DATEDIFF(CURDATE(), '2023-11-01')) DAY), '%Y-%m') as month) SELECT * FROM teacher join mo1 on mo1.month = DATE_FORMAT(create_time, '%Y-%m') 这样,就可以获得预期的结果了。但是,这样并不好。 * 1、对于这个查询条件,你完全可以在代码中进行生成,从外部传进来,而不必要使用 SQL 语句,这样在低版本中也可以使用,代码也更好读。 * 2、你在对查询列使用了 函数 "DATE_FORMAT(create_time, '%Y-%m')" 这样将会导致 MySQL 在查询数据的时候,无法使用到索引,如果数据量大的话,查询就会很慢。 虽然在 MySQL 8 中,你可以使用 函数索引,来创建索引从而提高效率。 alter table teacher add index idx_month((DATE_FORMAT(create_time, '%Y-%m'))); 但是这样也不是很好的办法,更建议的是,从外部传入的参数,把日期补全,把查询改成 between 的方式,再直接为 create_time 创建索引。 SELECT * FROM teacher where create_time between '2024-01-01 00:00:00' and '2024-01-31 23:59:59'; # 或者 SELECT * FROM teacher where create_time >= '2024-01-01 00:00:00' and create_time < '2024-02-01 00:00:00';
0
0
0
浏览量0
梦想缔造狮

音频资源播放问题:a标签与audio标签的差异?

大概是因为防盗链。 防盗链有多种,一种是来源检测,通过 refer 来允许指定域名来的请求。 另一种是有效期,生成的是临时地址,在某一个时间范围内是一直可用的。 你这个不太好判断,你可以开启 disable cache 再试试。这样通过来源和时间就能判断出开启的是什么防护方案了。
0
0
0
浏览量0
梦想缔造狮

如何解决Vue项目中文本翻译插件i18n-ally不生效问题?

vscode 调取命令行,输入 i18n, i18n-ally 有一个命令,自动查找文案文件,你调用试下
0
0
0
浏览量0
梦想缔造狮

vue3 div 绑定 ref 问题?

"截屏2024-03-28 22.09.01.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/fb72ed6091beb7990282de9902f8fcf7.png) "vue"解析"ref="xxx""属性时检查你的"script"中有没有同名的"xxx"的"ref",有就绑定,换句话说是检查你的"setupState"上有没有同名的"xxx"属性; 所谓"setupState"就是你"setup() { return state }"这里的"return"的值, ""是简写的语法糖,如果换成这样写就有值了: export default { setup() { const divRefs = { "divRefs.divRef1": null, "divRefs.divRef2": null, "divRefs.divRef3": null, }; // template中的ref="xxx" 中的 xxx 就是这里return 的对象中的xxx return divRefs; } } *** 如果你有多个"ref"想集中在一个对象上访问,不想定义太多"ref"变量,你可以通过实例去访问:"getCurrentInstance().refs.xxx" "截屏2024-03-28 22.18.23.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/5f5510f3b83780d719dc9cf723f21ee7.png) *** 或者改成函数形式: "截屏2024-03-28 22.23.18.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/d4bd80faae8c27e80c888fea8ae9cc91.png)
0
0
0
浏览量0
梦想缔造狮

vue3 devtools 不会亮了怎么回事?

vue3 devtools 不会亮了怎么回事? 重启过电脑 浏览器了 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/5c1c338fa1322e5acb62c57b2c8a69b1.png) 插件已经装上了 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/4d1e1702f658620b50cd157c3ba097e5.png) 跟着官方文档装的 * package.json{ "name": "vue-project", "version": "0.0.0", "private": true, "type": "module", "scripts": { "dev": "vite", "build": "vite build", "preview": "vite preview", "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs --fix --ignore-path .gitignore" }, "dependencies": { "pinia": "^2.1.7", "vue": "^3.4.21", "vue-router": "^4.3.0" }, "devDependencies": { "@vitejs/plugin-vue": "^5.0.4", "@vitejs/plugin-vue-jsx": "^3.1.0", "eslint": "^8.49.0", "eslint-plugin-vue": "^9.17.0", "sass": "^1.72.0", "sass-loader": "^14.1.1", "vite": "^5.1.6", "vite-plugin-vue-devtools": "^7.0.18" } } 官方的方案都试过了
0
1
0
浏览量213
梦想缔造狮

C# 泛型函数CS1061报错是为啥 ?

C++ 模板和 C# 泛型实现参数化类型的思路完全不一样,没法直接比较。 具体到本题来说的话,你需要声明一个接口出来,来作为泛型约束。 interface MyInterface { Name { get; set; } } Test(ref T structT) where T : MyInterface { structT.Name = "some"; }
0
0
0
浏览量0
梦想缔造狮

React useState异步代码没有更新?

背景: React代码如下 import { useState } from 'react'; export default function App() { const [count, setCount] = useState(0); const handleClick = () => { setCount(count + 1); setTimeout(() => { console.log(count, 'end'); // 还是 0! }, 5000); } return ( +1 {count} ); } setCount的更新是异步更新的,setTimeout也是异步的,为什么点击,console.log打印的是0,而不是1。 尝试: 尝试用普通js函数进行比较,js代码如下 function outerFunction() { let count = 0; function innerFunction() { console.log(count); } count = 1; // 将count更新为1 setTimeout(innerFunction, 5000); count = 2; } outerFunction(); console.log打印的是最新的值2。 疑问: 两段代码的打印结果不同,是什么原因呢?
0
1
0
浏览量141
梦想缔造狮

微信公众号能获取用户的 unionid 吗?

你可以看看这篇文章 "https://developers.weixin.qq.com/doc/offiaccount/User_Managem..." (https://link.segmentfault.com/?enc=JR1Z8dzUKe6TUjFwglTTKQ%3D%3D.pILL5Q4QhrEujE2DFd6hf7Sat4117jkRj%2FDFy2tNxnYKJazCKQ%2ByWsqnYXzOAAygLTrjMvpJgi%2F%2BOsBGxMXKPUStS15IYwitJeowcas9xIEAiL626DqRv4yMkiO1ty7XuH%2BWgpjZy%2BvCCGKSK6%2BuuHk0Coy8%2FPm8nmrXNIdkU7E%3D) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241003/3569108ec2f77ec3ab4e15d93fb8a964.png)
0
0
0
浏览量0
梦想缔造狮

Vite初始化项目在宽带变小时的页面缩放问题?

请问vite初始化项目在浏览器宽带变小的情况整个页面会缩放是怎么回事? 我又试了下,好像基本的html网页就会这样,请问这是怎么回事? 这是正常的 "1712546375801.jpg" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241003/ef2a650ee6523fc9730a243cd6b2c082.png) 这是缩小到一定程度后的样式,整个页面被缩小了,不仅仅是换行之类,是整个页面被缩小 "1712546402730(1).jpg" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241003/7f2b5b282da7806b63fe5d61177681ca.png)
0
1
0
浏览量193
梦想缔造狮

如何判断H5是否通过通用链接成功唤起了app?

如何判断H5是否通过通用链接成功唤起了app? 有什么检测方法吗?比如之前"scheme"的跳转,可以通过监听页面的"hidden"事件?
0
1
0
浏览量155
梦想缔造狮

微信小程序怎么渲染 markdown?

既然你已经已经有用 "nextjs" 做了一个项目了。那么小程序端可以直接用 "webview" (https://link.segmentfault.com/?enc=myv9Q2kPjri3IH5VUEhlOg%3D%3D.YTvu%2BaSYHwmmpAVnj%2FC1stzCSzWGAu4TtDPvivCK%2BZEXV%2B0uCteq7Ay1F78002OUT8UcTk%2F2x9ZV4w6X6wXA%2BX%2BZkcC8obygm6AHspKDcps%3D) 展示你的 "nextjs" 项目哇。 如果你不想要用 "webview" 那么就需要额外处理 "markdown" 内容转换为 "html" 内容,然后用 "rich-text" (https://link.segmentfault.com/?enc=rlS%2Bt8bT3g7uRN8hirq%2BxQ%3D%3D.zCRZjhO6QR2o%2BBwXCkLpsmaA9mNHlLMy4KHPlAktG5iRvk18wS3f3dVJ8jVT0Q5H4xU%2FbrngVnAecphQpO61U4W9aprDlCT2nHlbHEPIlG0%3D) 来渲染你的文章内容,但是这样就需要你自己在写一套富文本样式了。
0
0
0
浏览量0
梦想缔造狮

像这种图是如何画出来的?非常好奇,既美观又随性?

"https://excalidraw.com/" (https://link.segmentfault.com/?enc=LVATBx7mM1%2BhXQlegevLOA%3D%3D.E02Rmg2RAoP5IFrm4sUqL%2B63o1HNPCUbmL3H%2BCccWo4%3D)
0
0
0
浏览量0
梦想缔造狮

将springboot项目部署到生产上的问题?

有一个springboot项目想部署到阿里云上,需要简化部署流程,需要咨询几个问题: 1.生产上使用docker容器部署还是直接手动安装jdk,打jar包上传服务器? 2.使用宝塔部署安全可靠吗,是否可以简化部署,没使用过宝塔? 3.项目用到了MySQL和Redis,单独购买云数据库还是在运行springboot的服务器里自己安装MySQL和Redis服务? 4.项目是前后端分离的,是要单独再购买一台阿里云服务器然后安装nginx,来跑前端代码,还是直接在同一台阿里云服务器里,既运行springboot,又运行前端代码呢?
0
1
0
浏览量146
梦想缔造狮

没效果?

https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240929/5cd246e344828bf33c20e952e77ccef7.pnghttps://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240929/a1cf9887c77c4b41b3386f890f08ebdc.png 没效果。vue页面是空白的。
0
1
0
浏览量136
梦想缔造狮

请问html和css如何实现图片按曲线拉伸并排列布局呢?

用canvas API中ImageData相关方法,可以对图片上像素点的颜色进行控制,简单写了个demo "https://jsrun.net/uM5Kp/edit" (https://link.segmentfault.com/?enc=t%2FsKrXfZN8hkgyv2GyvNnw%3D%3D.UWn%2FSxA6x883ROBXGuzrL4oeWFDFpznn38Sm7LMA9Oo%3D)
0
0
0
浏览量0

履历