笑面猫
IP:
36关注数
21粉丝数
26获得的赞
工作年
编辑资料
链接我:

创作·57

全部
问答
动态
项目
学习
专栏
笑面猫

在MongoDB中,简单场景是否适宜使用事务?

简单场景下使用mongoDB事务是否合适? 有一个项目使用的是mongoDB作为存储数据库,其中用户充值购买VIP功能(逻辑很简单)打算使用mongoDB中的事务来实现,看官网文档的介绍说使用事务的性能并不好。那这样说在mongoDB中应该避免使用事务吗?(我是mongoDB新手,刚使用这种数据库)
18
1
0
浏览量275
笑面猫

vue3 中的 ref 在template中使用必须加.value才生效,为什么?

用法就很奇怪,为啥要用普通的对象来包裹一层呢。 一般来说多个 "options" 直接用 "ref" 声明多个变量就可以了呀。 import { ref } from 'vue' const optionA = ref({ options: { ... }, disabled: false }) const optionB = ref({ options: { ... }, disabled: false }) 测试A {{optionA.disabled}} 测试B {{optionB.disabled}} 如果还是想保留在原本的options的情况下,用 "ref" 或者 "readonly" 包裹以下就行了 import { ref, reactive, readonly } from 'vue' const isDisabled = ref(false); const options = readonly({ options: reactive({ isDisabled: true }), isDisabled: ref(false) }) const onChangeA = () => isDisabled.value = true 测试1 {{isDisabled}} 测试2 {{options.options.isDisabled}} 测试3 {{options.isDisabled}} 测试4 {{options.isDisabled}} *** EDIT 如果说需要有不同的方法给不同的组件调用就是以下这样组合业务逻辑就好了。 import { ref } from 'vue' // 业务块A const optionA = ref({ options: { ... }, disabled: false }) const onChangeA = () => optionA.value.disabled = true // 业务块B const optionB = ref({ options: { ... }, disabled: false }) const onChangeB = () => optionB.value.disabled = true 测试1 {{optionA.disabled}} 测试2 {{optionB.disabled}} Vue3中组合式API,其中的一个优势不就是为了解决选项式API中的这个痛点嘛。 "62783026-810e6180-ba89-11e9-8774-e7771c8095d6.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250113/16f763404e69e376b23f6303cd4c1c7a.png) "#更灵活的代码组织 - 组合式 API 常见问答 | Vue.js" (https://link.segmentfault.com/?enc=z8C52p5sLCM1Ulrg8usvsQ%3D%3D.cIvaGqjJH2rhBzCDr2iv7b3IiryQojZqGNtr%2FfF90K6FGz7pdEh7rf83kSwz%2BjehXeh6Kr5YWe3nEKG%2BRupNn5EpG8taZJgYwdwge4BR7TL%2FjRqxS34Qn78BAaLMOPx%2F) *** 如果说你觉得这样可能一个SFC文件中会有特别多的业务逻辑,可能会觉得不好维护。 如果放在一个对象中维护,IDE就可以把相关业务逻辑的折叠起来。继续按照你原本的开发习惯使用 "readonly" 包裹起来。 或者是把业务逻辑都提取到一个单独的JS文件中,然后 "import" 使用: import { optionA, onChangeA } from './optionA' import { optionB, onChangeB } from './optionB' 测试1 {{ optionA.disabled }} 测试2 {{ optionB.disabled }} // optionA.js import { ref } from 'vue' // 业务逻辑A const optionA = ref({ options: {}, disabled: false }) const onChangeA = () => optionA.value.disabled = true export { optionA, onChangeA } // optionB.js import { ref } from 'vue' // 业务逻辑B const optionB = ref({ options: {}, disabled: false }) const onChangeB = () => optionB.value.disabled = true export { optionB, onChangeB } "🔗 Vue SFC Playground" (https://link.segmentfault.com/?enc=0UQAC5rJt7Q3FG8NhLAyVw%3D%3D.52OpODEHNxlqEG4rn2XqmvYUgka54F%2FTszZ6iC2T45Qq02EOHTGAVHh%2Bzw53oI4q0n2e8H1E2XHqUAyOmq4omIbFkwlkvZlZaTTJc62qxmki1xCawr7fxmg9julAyMX3963aw4H5l3FTDpL1v4arDzpSlBLeRTtRFn1PivPrXf1wQVVTyC%2BVd29cW%2BquREyazdjJM2jZdcBU%2FP%2B8PZe5%2FtpxDZgxQHEJ0bduimHjk%2BaHF7emY4O%2FX4Iv4ZR6SSC6bkIepgBeLkyQz%2Fd6b434hQ7bRlotpMSFV0Lz2OTR6OloX%2B3Lh2np%2BNzd7bfbCmkMRRBzL6TuOd9CD9n%2BBBVZ2pCYLUkXZYwXH8sN3zmmshMCEZZUp220EX1ws%2F4e0UMniTno8bYqqXRN9rzCkiW2t6t5KIrO6tVURqr6oXlbU6Mguqa83vXtG25uazzfP6A%2BrZnkm6s4EBBCmguL40TJUJfD94c8uAZGaZzBY2u4448BOT1bEB0DpekXdyQe%2BCN6SF9jMmzPM2spmgayS59%2BYZiZ%2BQ3jzClKBv38pL0V0VTaOPF9TkgRNVSJ6FLsbXYJjQkxIH57KuFWCguLFvTjhrrcXIKLruXl5qkTomrLlHIonVT4NqoXsp4FN1HNolBaC7p47gfD74DfzkACs4gKcyhGXtVOeZ7avHj1iZ2YGT%2B%2F0cSgOUIJUYbWg2A0KB03uC1Al6vJJr%2FuDq7wRG%2B3NZOFO25xaC%2FDIFFUB%2FntuwkZ%2BcXw0r5oVlksdFMZhURTSaYjTgxphmrSkmzMCMuA%2FSoEW83M9dw1v3ieAqHNwdoxa9y4hhXplpOdPCXiUGgjRUcsqsFSiE2JDt6hXLrIkLHyEQ4w0eTwGE8t0MOa4B2IutrIwScxVZt%2BUeQIZhVIOSZEuiYpf15rfQSHZLiVZKlsGVjQ0fGCUsk7vPQCDsY%3D)
0
0
0
浏览量0
笑面猫

yarn vite vue3 为什么ctrl-c会报错?

"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250111/8eaf11a9df4e7031efe7efc13f829b7c.png) 如图所示,没有任何代码报错,"yarn"调用"vite",vite的exitcode为1。 点解?可能原因是什么?
8
1
0
浏览量435
笑面猫

don’t have access,提示没权限或同意协议?

上面写的很清晰了,应该是苹果更新了一些有关程序开发的条款你需要同意一下,登入开发中账号看一下😂; "不管遇到什么问题先想一下,思考一下可能是哪方面的问题,错了没有关系,但要有思考,慢慢会有进步"
0
0
0
浏览量0
笑面猫

为什么我把 debian12 的 apt 源替换为上海交大之后,还会连接 debian 官方源?

debian 12改了,默认不使用"/etc/apt/sources.list"文件,这个文件初始是空的,真正的仓库配置在 "/etc/apt/sources.list.d/" 目录下,并且格式不是以前常见的简化格式( ONE-LINE-STYLE FORMAT ),而是被称为 "deb822"的新格式,新格式参考: "https://www.debian.org/doc/manuals/debian-reference/ch02#_deb..." (https://link.segmentfault.com/?enc=yCBBCelq9n0dk0TCJTHb%2Fw%3D%3D.tl1sKnAE9d1gFwbaCJFnlpaCYDFT0F2dvvp0ABBOLPHkCp%2BYCQ2bCF%2BmwMpPCh0qU9aJj1tXu9bndbjqSiF7rabJyVZqrTN%2BC3YYDiiANzA%3D) 并且在debian的man手册中提到,deb822的引入会逐步废弃掉老的one-line format: "https://manpages.debian.org/bookworm/apt/sources.list.5.en.html" (https://link.segmentfault.com/?enc=2fi%2BRTNszASxWeAtFUfxBw%3D%3D.bPFmAQfGsR3bA%2Fl1Pby1fwBxCnKpeYhtLc5RTdLhcCjTnctsjeoDVQx%2ByL0y7ymt79092kjtyEF0zvd4jliKDw%3D%3D) 在 DEB822-STYLE FORMAT 章节下有这样的说明 «This is a new format supported by apt itself since version 1.1. Previous versions ignore such files with a notice message as described earlier. It is intended to make this format gradually the default format, deprecating the previously described one-line-style format, as it is easier to create, extend and modify for humans and machines alike especially if a lot of sources and/or options are involved. Developers who are working with and/or parsing apt sources are highly encouraged to add support for this format and to contact the APT team to coordinate and share this work. Users can freely adopt this format already, but may encounter problems with software not supporting the format yet.» 你需要一并删除"/etc/apt/sources.list.d/"目录下的文件才行
0
0
0
浏览量0
笑面猫

谷歌浏览器下 jquery1.9.1 会报 DOMException: Failed to execute 'querySelectorAll' on 'Element'?

我用这个jq写了几个网站 都上线了 但是昨天开始谷歌控制台就开始报错这个 火狐浏览器就没事 哪位前辈知道是怎么回事? "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241230/eb8bca562ba11c6f8163062daa6b1a38.png)
15
1
0
浏览量255
笑面猫

vue-cli-servic build 打包后生成非常多的js和css文件,怎么办?

找到解决办法了 config.optimization.delete('splitChunks') config.plugin('limitChunkCountPlugin').use(webpack.optimize.LimitChunkCountPlugin, [{ maxChunks: 7 }]) 很懵,真的什么都没动就出现这种问题。。。。 如果你也遇到了记得删除掉splitChunks,我这边不删掉会出现main文件不执行导致app没挂载的问题
0
0
0
浏览量0
笑面猫

mongodb 本地访问与远程访问的数据一致性问题?

我觉得你可能还是需要检查下配置文件,是不是错误的读取到其他库或者服务器了,比如本地和测试的区别,可以使用可视化的远程工具确认下连接看看
0
0
0
浏览量0
笑面猫

linux上root用户下安装的expect为何切换到普通用户无法使用?

不用。可能是普通用户的环境变量PATH设置有问题。 比如说expect安装在 /usr/local/bin 目录下,但是普通用户的PATH没有配置这个目录,那么普通用户在执行expect的时候,就会出现找不到命令。 这个时候只需要吧expect安装的目录加到PATH里面就可以了。 也可以使用完整的路径去执行expect
0
0
0
浏览量0
笑面猫

element-plus 中的elmessage函数调用模式,设置appendTo不生效?

经过我的测试,我使用的element-plus2.2.6 版本是没问题的。 不知道你所选取的"#main"是否在页面上存在这个元素?
0
0
0
浏览量0
笑面猫

css怎么实现圆形缺个角?

"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241210/3356ac029498776b17faa2b5902846a2.png) 如上图所示,缺口角大概60度左右,这种要怎么实现?
0
1
0
浏览量20
笑面猫

uniapp写小程序,使用tabBar引入icon不显示图标,百度方法都试了不成功怎么办?

图标的unicode: .icon-shouye-xianxing-copy:before { content: "\f040"; } 引入位置也没错 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241210/551f8cf352488770bcedc5e14208dc22.png) iconfont.css里的地址也修改了 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241210/a85222971f8e2e7bfce3ad807f00f9a7.png) "tabBar": { "color": "#7A7E83", "selectedColor": "#3cc51f", "borderStyle": "black", "backgroundColor": "#ffffff", "iconfontSrc": "static/iconfont-css/iconfont.ttf", "list": [{ "pagePath": "pages/index/index", // "iconPath": "static/image/icon_component.png", // "selectedIconPath": "static/image/icon_component_HL.png", "text": "组件", "iconfont": { "text": "\uf040", "selectedText": "\uf040", "selectedColor": "#34BAFF" } }, { "pagePath": "pages/joint/index", // "iconPath": "static/image/icon_API.png", // "selectedIconPath": "static/image/icon_API_HL.png", "text": "接口", "iconfont": { "text": "\uf040", "selectedText": "\uf040", "selectedColor": "#34BAFF" } }] }, 还是不显示图标 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241210/d9cd94bc7907f968dc74bf204ab973f5.png)求教
0
1
0
浏览量22
笑面猫

go执行docker build时遇到的问题?

增加git环境变量 export GIT_TERMINAL_PROMPT=1 再次执行go build 会提示输入git仓库输入登录密码验证,即可。
0
0
0
浏览量0
笑面猫

Win10 鼠标重影?

"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241208/12059384ea115b2573d5432c2809077f.png) 额。。手机拍不出来呢。就是红色框框那里有重影,是常态存在的。(是所有鼠标类型,不单单是箭头) 系统的鼠标设置 "阴影,轨迹"都是关闭的。 这可能是什么原因导致的呢? *** 新图片 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241208/b4494670ad249e7e3227b0e916a9c682.png)
0
1
0
浏览量23
笑面猫

怎么实现两个滚动条,当内部滚动条滚动到底部时外部滚动条立刻向下滚动?

一个简单的方案: let outer_scroll = document.querySelector("#outer_scroll"); let inner_scroll = document.querySelector("#inner_scroll"); inner_scroll.addEventListener( "mousewheel", (e) => { let ct = e.currentTarget; if (e.wheelDeltaY > 0) { // 上滚 if(ct.scrollTop == 0){ outer_scroll.scrollTop -= 30; e.preventDefault(); e.stopPropagation(); } } else { if (ct.scrollTop + ct.offsetHeight == ct.scrollHeight) { outer_scroll.scrollTop += 30; e.preventDefault(); e.stopPropagation(); } } }, false );
0
0
0
浏览量0
笑面猫

react hooks useState值为什么没有生效?

今天在工作中遇到一个react hooks问题,虽然解决了但是对于其中的原因不太理解,这里发出来和大家一起讨论一下。 具体代码如下,场景步骤如下: 1. 点击一次,执行running后,isPolling设为true,并触发polling的useEffect 2. 快速再点击一次,执行running,因为running前执行了cancle,所以这时候running内的isPolling应该是false,但实际还是true 看了一些批量更新的知识,好像解释不了这种现象。大家有什么看法吗? import { useCallback, useEffect, useState } from "react"; export default function MyApp() { const [isPolling, setIsPolling] = useState(false); const [pollingCount, setPollingCount] = useState(0); const [timer, setTimer] = useState(); const handleClick = () => { cancle(); running(); }; useEffect(() => { if (isPolling && pollingCount { console.log("44"); running(); }, 1000) ); } }, [isPolling, pollingCount]); const running = useCallback(() => { console.log("running11:", isPolling, pollingCount); if (!isPolling) { console.log("11"); setIsPolling(true); } else if (isPolling) { console.log("22"); setPollingCount(pollingCount + 1); } }, [isPolling, pollingCount]); const cancle = () => { setIsPolling(false); setPollingCount(0); }; return ( 点击 ); } 执行结果如下 https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241204/c88067739550b10d05b2c6b510094349.png
0
1
0
浏览量18
笑面猫

请教下,nginx 能运行,但却不工作?

我在 centos8 stream 上通过 "yum install nginx" 安装了 nginx,通过命令 "sudo netstat -plutn | grep nginx" 检查,nginx 是正常运行的 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 9962/nginx: master 配置文件 "nginx.conf" user nginx; worker_processes auto; error_log /var/log/nginx/error.log; pid /run/nginx.pid; # Load dynamic modules. See /usr/share/doc/nginx/README.dynamic. include /usr/share/nginx/modules/*.conf; events { worker_connections 1024; } http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; include /etc/nginx/conf.d/*.conf; } 而 "conf.d" 中的唯一配置文件 "xc.conf" server { listen 80; return 403; } 即通过 ip 访问,则得到 403 的返回。 现在遇到的问题是,通过 ip 访问,并不能得到 403 的返回。而访问 ip:8080 能正常访问到一个通过 docker 拉起来的应用。 感觉 nginx 虽然是运行了,但并没有正常工作。 PS, 所有的端口都已经打开 请问这个该怎么排查呢?多谢。
0
1
0
浏览量20
笑面猫

pc web支付形式有哪些,推荐哪种?

web端的支付形式有哪些?推荐哪种?
0
1
0
浏览量23
笑面猫

这段python f文件关闭了吗?

def func(): with open(self.yaml_path,'w') as f: info_save=yaml.load(f) if xx: return return 请问一下,这个代码在第一个"return"的时候,能关闭f文件吗?
0
1
0
浏览量18
笑面猫

如何做工具网站的SEO?

工具类网站如何做SEO优化,比如这种工具站 fktool.com 工具网站一般只有几个页面。如何做SEO呢?
seo
0
1
0
浏览量24
笑面猫

内存和性能配置不足是导致应用程序运行缓慢或崩溃的主要原因吗?

内存和性能配置不足是导致应用程序运行缓慢或崩溃的主要原因吗?
0
1
0
浏览量18
笑面猫

copilot/new bing 怎么回到某个对话历史?

"https://copilot.microsoft.com/" (https://link.segmentfault.com/?enc=weCONpNuP4FBpBjkUgpLPA%3D%3D.LPQh9TBZz4qnx3d%2BfOrHf1NYHqXJC6h27y9vQxrIfz4%3D) copilot 怎么回到某个对话历史? 像 chatGPT 点击左侧就能选择某个对话历史,继续对话 "图片.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241113/12aa1d4ee7404a65b7c9cf91b5d045b8.png) 但是 copilot/new bing 好像没有这个功能?不能「再续前缘」了? «点了右侧那些没反应»
0
1
0
浏览量19
笑面猫

请问后端 api 返回的错误信息一般你怎么规定?

请问后端 api 返回的错误信息一般你怎么规定? message 是用中文还是英文, 还是其他的标志, 还有加自定义 code么?
1
1
0
浏览量31
笑面猫

web的pc版应用js库与移动版的区别?

web的pc版应用js库与移动版的区别? 比如Pc版用了jquery/swiper/jquery.lazyload.js 移动版呢,我知道好像是zepto代替jquery,后面两个呢,是一样,还是也有类似替代?
0
1
0
浏览量25
笑面猫

rustup-gnu, rustup-msvc, rustup:区别及选择下载?

windows 中安装 msvc 版需要先安装 Visual Studio,但 msvc 版编译的程序体积较小。 gnu 版不需要安装额外的软件,但同项目编译后的体积较大。 我在 Windows 上用的是 msvc 版。 你安装任何版本都不影后续安装其他版本,rustup 可以切换 abi 版本。 rust 官方文档的建议是:由于 MSVC ABI 提供了与其他 Windows 软件的最佳互操作,多数情况下优先使用 MSVC 版。同时 GNU 版始终是可用的,即使你默认不使用它。
0
0
0
浏览量0
笑面猫

nextjs 接口转发 跨域?

nextjs。我想再api里面提供一个接口,用来转发客户端组件发送的请,来解决跨域。 可以给个demo嘛?
0
1
0
浏览量19
笑面猫

按照resful api风格规划代码疑问?

根据模型来分吧, 如果你的 "Admin" 模型中有个 "category" 字段, 那就使用 "AdminService", 路由使用 "admins?category=xx" 这种。
0
0
0
浏览量0
笑面猫

vue方法调用传参,es6模版字符串怎么转表达式?

vue方法调用传参,es6模版字符串怎么转表达式? this.uploadFile(file, 'databaseCsvFiles') uploadFile(file, target) { `this.${target}` = xxx // 报错 Invalid left-hand side in assignment expression }
0
1
0
浏览量19
笑面猫

win10设置界面的鼠标移动显示周边的样式(探照灯效果)该怎么实现呢?

类似windows设置界面 在前端开发时,使用css,该如何实现探照灯效果? 如果css不行的话,那该如何实现呢? "hover" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241027/1d54f3f6b1842042d5197ed2da379131.png)
0
1
0
浏览量19
笑面猫

vue components传值,在组件里页面使用 slot-scope,scope.row,报错?

vue3的版本我用的vue2写法,我在1个components里传了多个值,在rightColumn页面使用 slot-scope, 报错信息:Property "scope" was accessed during render but is not defined on instance. 很多警告信息:Unhandled error during execution of scheduler flush. This is likely a Vue internals bug. {{ scope.row.checkItem }} 我尝试只传1个值,使用slot-scope="scope",取值scope.row,也报错。
0
1
0
浏览量18
笑面猫

开发环境中控制台打印?

图一的错误。看样子是你的request.js 报错了。promise 报错,但是你没有写catch。你看看是不是接口请求报错了。你写上catch 打印一下error信息
0
0
0
浏览量0
笑面猫

uni app打包后,css资源不存在,不想引入,怎么解决 ?

uni-app写H5,打包,放到webview环境下,会出现css资源不存在的问题。 设置为"base": "/h5/", 打包后出现了, 而这个css找不到 希望获得结果:不要引入不存在的css文件
0
1
0
浏览量22
笑面猫

页面切换如何禁止刷新呢?

两个页面切换,如何禁止刷新呢?不借助浏览器缓存方法,比如localStorage、sessionStorage, 切换会重新刷新页面,想要的结果是第一次切换刷新后,再次切换到当前页面无需刷新,就跟antd的Tabs一样效果 比如下面两个页面,用Radio来互相切换,比如第一个ChildComponents_1页面input输入“测试”内容,切换到ChildComponents_2,再切换ChildComponents_1,发现input输入“测试”内容已经没了,页面被重新初始化了,这个不通过浏览器缓存方法该怎么解决呢? import React from 'react'; import {Radio,Input} from 'antd'; import ChildComponents_2 from './ChildComponents_2'; class ChildComponents_1 extends React.Component { constructor(props) { super(props); this.state = { inputValue:'', radioValue:'组件一' } } render() { const {inputValue,radioValue} = this.state; return ( { radioValue==='组件一'?( { this.setState({inputValue:e.target.value}); }} /> { this.setState({radioValue:e.target.value}); }} > 组件一 组件二 ):( ) } ); } } export default ChildComponents_1; import React from 'react'; import {Radio,Input} from 'antd'; import ChildComponents_1 from './ChildComponents_1'; class ChildComponents_2 extends React.Component { constructor(props) { super(props); this.state = { inputValue:'', radioValue:'组件二' } } render() { const {inputValue,radioValue} = this.state; return ( { radioValue==='组件二'?( { this.setState({inputValue:e.target.value}); }} /> { this.setState({radioValue:e.target.value}); }} > 组件一 组件二 ):( ) } ); } } export default ChildComponents_2;
0
1
0
浏览量17
笑面猫

点击某个自定义按钮,实现表格数据刷新?

let PortData = reactive({ tableData: [], // 列表数据 lanPortId: '',// 网络端口输出id NetworkCard: '',// 网卡--右上文字 IpAddress: '',// IP地址--右上文字 Port: ''// 端口--右上文字 }) onMounted(() => { nextTick(() => { GetSerID(); }) }) // 先进行 获取端口数据量的请求,查询到对应的id,然后再讲id传递给getInitialTableData函数通过id是实现显示对应接口数据 async function GetSerID() { const SerIDList = await api.GetSerialId(); const { data: res } = SerIDList; const result = res.port_thruput.split(",").reduce((acc, curr, index, array) => { if (index % 3 === 0) { const [portId, rate, thruput] = array.slice(index, index + 3); const formattedPortId = parseInt(portId).toString(16).padStart(2, '0'); if (formattedPortId >= '21' && formattedPortId key.endsWith('_freq') && value !== 0) .map(([key, value]) => `${key.replace('_freq', '').toUpperCase()}/${value}`) .join('; '); // 如果报文/频率为空,则执行变为使能按钮,并且隐藏掉编辑框语句 if (formattedFrequency === '') { buttonText.value = '使能' iconVisible.value = false } else { buttonText.value = '禁止' iconVisible.value = true } const forma = '' if (portId >= '21' && portId = '21' && portId 10 id network_card: '有线',//网卡 en: res.en, //端口使能 type: res.type,//类型 dst_ip: res.dst_ip,//目标ip port: res.port,//端口号 formattedFrequency: formattedFrequency, // 添加formattedFrequency属性 state: res.state//连接状态 } ]; // console.log('lan口列表数据源', tableData); PortData.tableData = [...PortData.tableData, ...tableData]; } } // 点击保存按钮,实现表格数据的更新 async function save() { const data = { port_id: Number(sessionStorage.getItem('lanPortId')), state: 1, kcn_freq: Number(INS.input_kcn), inspva_freq: Number(INS.input_inspva), inspvax_freq: Number(INS.input_inspvax), bestpos_freq: Number(INS.input_bestpos), gga_freq: Number(GNSS.input_gga), rmc_freq: Number(GNSS.input_rmc), dop_freq: Number(GNSS.input_dop), gsa_freq: Number(GNSS.input_gsa), gsv_freq: Number(GNSS.input_gsv), heading_freq: Number(GNSS.input_heading), zda_freq: Number(GNSS.input_zda), gst_freq: Number(GNSS.input_gst), rawimu_freq: Number(RAW.input_rawimu), imudataa_freq: Number(RAW.input_imudataa), sta_freq: Number(OTHER.input_sta), dev_freq: Number(OTHER.input_dev), } const SetData = await api.SetPortOut(data) const { data: res } = SetData if (res.error_code === 0) { await GetSerID();//初始化列表 return ElMessage({ message: res.msg, type: 'success', showClose: true }) } else { return ElMessage({ message: res.msg, type: 'error', showClose: true }) } } "图片.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/daade76f583cd09260d587b8408b80c0.png) 我根据上面代码,在点击保存按钮,save()内,调用GetSerID()函数来初始化列表来达到列表数据更新,但是没反应?麻烦各位大佬们帮忙看看,谢谢~
0
1
0
浏览量19
笑面猫

纯 nodejs 项目如何调用 nestjs 微服务?

从 stackoverflow 找到一个答案."https://stackoverflow.com/questions/55942795/call-my-nestjs-microservice-with-nodejs-app" (https://link.segmentfault.com/?enc=JTF6I%2B%2BG5CGb73o%2BPx4yhg%3D%3D.D9hR6%2FppgAruZInVSRjBvE38XFjh3UmpFrdiX38rNzkMQI4F%2FhGLfUZYuThwqD9ISmExZCkEwZN3qgipAq3bwkR46v2PQs6566ayaLfyVkNCuVXdvFbzuaZb9Ep8qYzz) import { ClientTCP } from "@nestjs/microservices"; import { lastValueFrom } from "rxjs"; async function bootstrap() { const client = new ClientTCP({ host: "localhost", port: 3001, }); await client.connect(); const pattern = { cmd: "math:wordcount" }; const data = "12314"; const result = await lastValueFrom(client.send("math:wordcount", data)).catch( (e) => { console.log(`e`, e); } ); console.log(result); } bootstrap(); 当然安装的话需要安装这些包,不然会缺少依赖...: "@nestjs/common": "^10.3.0", "@nestjs/core": "^10.3.0", "@nestjs/microservices": "^10.3.0"
0
0
0
浏览量0
笑面猫

数据格式转换不成功?

let result = { "data": [ "{\"id\":2416,\"name\":\"\"警告\"今天大雪\"}", "{\"id\":2417,\"name\":\"1.30测试\"}" ] } 后端返回数据格式无法进行修改,都是双引号转义符, 根据以上代码期待转成下面格式 const data = [ { id: 2416, name: '"警告"今天大雪' }, { id: 2417, name: '1.30测试' } ]
0
1
0
浏览量208
笑面猫

js 正则匹配问题?

在JavaScript中,RegExp对象可以接受一个字符串作为参数来创建一个新的正则表达式实例。然而,在你给出的例子中,存在对正则表达式的误解。 第一部分: let str = /街|道|中/g; console.log(RegExp(str).test('道路')); // true console.log(RegExp(str).test('中')); // false 这里,str 已经是一个正则表达式实例( /街|道|中/g ),它表示匹配“街”、“道”或“中”中的任意一个,并且是全局搜索(g 标志)。当你用 RegExp(str) 创建一个新的正则表达式时,实际上是对已经存在的正则表达式进行了一次不必要的包装。 由于正则表达式 /街|道|中/g 中的 g 标志意味着在执行 .test() 方法时会从当前位置开始查找匹配项,而不会重置为字符串的起始位置。所以第二次调用 test('中') 时,因为上一次匹配了 "道",下一次查找的位置不是字符串的起始位置,因此返回 false。 第二部分: console.log(RegExp(str).test('道路')); // true console.log(/街|道|中/g.test('中')); // true 这次第二个测试语句直接使用了原始的正则表达式 /街|道|中/g 来执行 .test('中'),每次 .test() 都会从字符串的起始位置开始查找,所以即使在之前的查找中匹配过其他字符,再次查找仍能正确匹配到 "中" 字符,因此返回 true。 总的来说,问题出在对正则表达式的连续测试以及全局标志 (g) 导致的 lastIndex 状态改变上。在实际应用中,通常不需要对已有的正则表达式实例再用 RegExp() 包装一次。
0
0
0
浏览量0
笑面猫

如何将一个并列形式的数组对象,根据字段改为嵌套形式?

因为你的数组是按照level有序排列的,所以可以直接遍历 function createTreeByList(arr, res = []) { let parents = [] arr.forEach(item => { let pindex = parents.findLastIndex(parent => +parent.level < +item.level) if(pindex < 0){ res.push(item) }else{ let parent = parents[pindex] parent.childs = parent.childs || [] parent.childs.push(item) } parents.length = pindex + 1 parents.push(item) }) return res } Chapters = aaa(Chapters)
0
0
0
浏览量0
笑面猫

如何解决前端图片加载时stalled阻塞时间过长问题(不是6个并发数限制的原因)?

点下面这里,就可以看到这些字段的说明。 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241007/0bfbe5c42483312d861c8b7a98ee49e7.png) 见 "网络功能参考" (https://link.segmentfault.com/?enc=MQSCHOwzhyenHm1%2BOtbItQ%3D%3D.NX%2FyWbf3jLut6aTego9BGhR6Ok8D4lY6aynjUAhI9NyXJTxdWYGfcfHkLmE7TaCv6ryLoPUhanjZW%2BXiWHh3ehlC9PFvdNU5NzZPpVKi1odN4JSOVIU7Agm%2Bzf1pjyCQFBUOEEhy75N6%2Bzi0szsuhMeKjaCFz6py8lx89tLIoWV%2BgfqepA4AoLg62rpnwb0XAOMsLszFtmbgjZNZUmKBPOBgNvl1P3y5weOaGcLO7J9CeWj8wZBhcZX4vIXcefC8fA8UyvrDPd3kuxXHXSM2TvgPw%2B8KkW0RNU5auBcf96lCJz6ZTAiaXxqAhT%2FOZhz79chTi85ZY2YUZuAZDPcF0V%2BYjdr60FviMcT0oRFQ0y1oyp6hHWfbtWRHil3sIQZmF29EVlWJo0GyrlfFFRvUFoSyLNK2KV1ASRsqAn3vsR%2FvfenagJ0Z48mZuuDRU1wwSv4RUlsFqqLO52RMkY7YYw%3D%3D) 中的描述。 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241007/bde34de21ea2f710f3c6040d3590116c.png) 也可以参考英文原版: «Queueing. The browser queues requests before connection start and when: There are higher priority requests. There are already six TCP connections open for this origin, which is the limit. Applies to HTTP/1.0 and HTTP/1.1 only. The browser is briefly allocating space in the disk cache.Stalled. The request could be stalled after connection start for any of the reasons described in Queueing.» 可能的原因就这 3 个。
0
0
0
浏览量0
笑面猫

C#继承中的override问题?

C#中的override本身是否具备【重写】的定义,还是说【重写】的定义只有关键字abstract和virtual才有https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241008/b51e14e8f61329f7a0b5a60f3d09a6a7.png 多层继承后,我不知道子类override的是父类中的override方法还是基类中的abstract方法
c#
0
1
0
浏览量212
笑面猫

理解JavaScript中123['toString'].length和[]['toString'].length的差异?

为什么123['toString'].length===1,[]['toString'].length===0 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241008/05e181781e07f07b9101e7b791984ff8.png)
0
1
0
浏览量116
笑面猫

有没有支持在微信小程序中运行的 3 维地图库?

主要支持地图的缩放旋转等操作,并且可以支持地图中不同区域有不同的高度,类似柱状图,但是柱状图的横截面是地图的轮廓。
0
1
0
浏览量135
笑面猫

GO切片问题:一个切片从中间删除用另外一个变量接收原切片值变化的原理是啥?

一个go切片的问题 var i = 3 nums := []int{1, 2, 3, 4, 5, 6} nums6 := append(nums[:i], nums[i+2:]...) fmt.Println(nums, nums6) 这段代码nums 最终输出为什么变成了[1,2,3,6,5,6] 输出内容为:"// [1 2 3 6 5 6] [1 2 3 6]" 看这个输入nums应该是改动了,但是为什么5,6又还在呢
0
1
0
浏览量172
笑面猫

vscode标签高亮有问题,大家遇到过吗?

首先排除是不是当前页面的标签错位导致的。(重启"vscode",应该试过了) 新建一个文件,就嵌套一层试试工作是否正常: 如果不正常,那就先重装一下插件,看能否恢复? 如果还是不行,再把其他插件全部屏蔽掉,再看看。
0
0
0
浏览量0
笑面猫

PHP echo输出input带onclik事件,onclick参数为页面地址,但是出不来效果?

急急急!救救孩子的毕设!PHP echo输出input带onclik事件,传参为一个页面地址,但是跳转不过去,输出地址是乱码"这是代码截图" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241006/57ce274042bdd0381ed154d1261dce31.png)"这是JS部分" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241006/56e8f10395fd20073045b5fffc84d98a.png)"这是在浏览器的效果" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241006/3a51e6fc871725ab1b8d498d4637a154.png) 单双引号都试过了就是不好使啊55555555555后天中辩了
0
1
0
浏览量147
笑面猫

ant-design-vue的折叠面板collapse问题?

正在使用ant-design-vue中的折叠面板,a-collapse中a-radio-group会被识别成子panel,导致结构异常,如何才能避免被认为是子panel "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/4289c1addecdb6fed66c5c95f2456630.png) introduction tab1 tab2 export default defineComponent({ setup () { const activeKey = ref('introduction') const tab = ref('process') return { activeKey, tab } } }) 这是异常的ant-radio-group结构 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/87f39230054555a31e5773da3628cf0f.png) 这是正常的ant-radio-group结构 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/faf100332126b8e111d7d3c49f3822e7.png)
0
1
0
浏览量187
笑面猫

nextjs的 route handler 到底有什么用?

route handler 定义在 route.ts/js 文件里, 看上去和 page 的定义非常像,无非就是 page 返回的是页面内容,route.ts 更多的像是一个restful风格的返回值,尽管他也能通过 reponse 直接返回 html 标签,但是相信应该不会这样做。 所以我的疑问是,这个到底是干嘛用的?服务器组件里我能直接 fetch 更后端的接口获取数据,客户端也可以吧? 我在介绍 fetch data的文档里,看到可以在客户端组件里通过route handler 请求数据,那么请求的链路等于是客户端组件,通过/api/xxx 请求 route.ts, 然后 route.ts 里也许去访问数据库或者请求后端接口再去调用一下,那么为什么不直接在客户端组件里请求后端接口。经过这个中转不是多次一举吗?除非后端逻辑就在route.ts 新手刚接触,有点疑问,谢谢指点
0
1
0
浏览量202
笑面猫

antd 3.x时间范围选择器,选择时间后怎么让值合并成一个倒着的字符串传给后端?

antd组件库时间选择器,选择时间段开始时间和结束时间。选择后是一个数组,转成字符串后怎么倒着显示? "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/13c34b3a9cdce6eec0b9947dec1fa2a8.png) 这个是循环的,点击右边的小+号可以添加,就是可以添加第二次第三次这样的 选择了一个时间段,控制台打印的就是["开始时间","结束时间"]这样的数据。但是后端需要的是["22,16,2,10"]这样的数据。选择完需要让值倒着给后端传过去 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/7fbf2cf65424e27cf5bebb4989ba8aa8.png) 如果前面的日期也选择了的话,后端需要的数据格式就是["22,16,2,10","16,4"]这样的格式 像是选择了01 02 03 04这样的时间给后端传参之前怎么把0去掉呢? 0" @click="removeFormItem(index)"/> changePick(timeRange) { console.log(timeRange); const times = timeRange.map(time => { const [hour, minute] = time.split(':'); return `${minute},${hour}`; }); const result = times.join(','); console.log(result); }, 写了一个change事件去把时间选择器的数组转成字符串。但是为什么现在控制台打印的确是02,10,22,16这样的啊?这个应该怎么具体去解决呀各位大佬 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/0f931a278f739e27453cd491e022069e.png) 添加第一次的字符串是"22,16,2,10,16,4"是这样的 添加第二次也是这样的。但是最后是一个数组["22,16,2,10,16,4","第二次添加的时间和日期"]
0
1
0
浏览量178
笑面猫

vue使用websocket?

代码 点击发送 import { baseURL } from '@/config' import request from '@/utils/request' export default { data() { return { // wsUrl: 'ws://192.168.1.109:8900/applet/user/chat/176', // ws地址 // socket: null, // ws实例 socket: null, // authorizationToken: 'your-authorization-token', // 假设你已经有了授权令牌 form: {} }; }, beforeDestroy() { if (this.socket) { this.socket.close(); } }, mounted() { this.refreshToken() }, methods: { refreshToken() { const that = this request({ url: `${baseURL}captcha`, method: 'get', }).then(function (result) { if (result.success) { that.form.csrfToken = result.data.csrfToken } }) }, connectToWebSocket() { this.socket = new WebSocket('ws://192.168.1.109:8900/applet/user/chat/176'); this.socket.onopen = () => { // 连接打开后,发送包含授权信息的消息给服务器 const authMessage = { authorizationToken: this.form.csrfToken }; this.socket.send(JSON.stringify(authMessage)); }; this.socket.onmessage = (event) => { console.log('Received:', event.data); }; this.socket.onerror = (error) => { console.error('WebSocket Error:', error); }; this.socket.onclose = () => { console.log('WebSocket is closed now.'); }; } } }; ws://192.168.1.109:8900/applet/user/chat/176是后端接口,这个接口要带上token的值,token的值放在authorization,176是userId,目前是写死,用上面的代码 在控制台里报VM10734 ceshi.vue:40 WebSocket connection to 'ws://192.168.1.109:8900/applet/user/chat/176' failed: Error during WebSocket handshake: Unexpected response code: 200,尝试过几种写法都没有效果 想要的效果是WebSocket 跟 上面的接口 实时通讯,大佬们遇到这样的情况要怎么解决 https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/b86e18846e34be6b8104eaef61bf67ce.png
0
1
0
浏览量198
笑面猫

spring boot项目idea上可以正常运行,打包成jar包后运行出错?

一个spring boot的项目,在idea上可以正常运行,打包成jar包后运行出错,报错如下: 2024/04/25-11:33:16 INFO [main] com.vicy.erp.ErpApplication - Starting ErpApplication v1.0.0-SNAPSHOT on DESKTOP-U2CCDRN with PID 5472 (D:\work\VC2207-medical-erp\src\med-erp\target\vicy-erp-1.0.jar started by Admin in D:\work\VC2207-medical-erp\src\med-erp\target) 2024/04/25-11:33:16 DEBUG [main] com.vicy.erp.ErpApplication - Running with Spring Boot v2.0.0.RELEASE, Spring v5.0.4.RELEASE 2024/04/25-11:33:16 INFO [main] com.vicy.erp.ErpApplication - No active profile set, falling back to default profiles: default 2024/04/25-11:33:17 ERROR [main] org.springframework.boot.SpringApplication - Application run failed org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'webConfig.FrontEnd': Unsatisfied dependency expressed through field 'baseDir'; nested exception is org.springframework.beans.TypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.io.File'; nested exception is java.lang.IllegalArgumentException: Could not retrieve file for class path resource [erp_web]: class path resource [erp_web] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:/D:/work/VC2207-medical-erp/src/med-erp/target/vicy-erp-1.0.jar!/BOOT-INF/classes!/erp_web at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:587) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:91) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:373) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1344) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:502) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:312) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:310) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:760) at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:868) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:549) at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:752) at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:388) at org.springframework.boot.SpringApplication.run(SpringApplication.java:327) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1246) at org.springframework.boot.SpringApplication.run(SpringApplication.java:1234) at com.vicy.erp.ErpApplication.main(ErpApplication.java:16) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51) Caused by: org.springframework.beans.TypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.io.File'; nested exception is java.lang.IllegalArgumentException: Could not retrieve file for class path resource [erp_web]: class path resource [erp_web] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:/D:/work/VC2207-medical-erp/src/med-erp/target/vicy-erp-1.0.jar!/BOOT-INF/classes!/erp_web at org.springframework.beans.TypeConverterSupport.doConvert(TypeConverterSupport.java:80) at org.springframework.beans.TypeConverterSupport.convertIfNecessary(TypeConverterSupport.java:60) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1092) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1065) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:584) ... 26 common frames omitted Caused by: java.lang.IllegalArgumentException: Could not retrieve file for class path resource [erp_web]: class path resource [erp_web] cannot be resolved to absolute file path because it does not reside in the file system: jar:file:/D:/work/VC2207-medical-erp/src/med-erp/target/vicy-erp-1.0.jar!/BOOT-INF/classes!/erp_web at org.springframework.beans.propertyeditors.FileEditor.setAsText(FileEditor.java:107) at org.springframework.beans.TypeConverterDelegate.doConvertTextValue(TypeConverterDelegate.java:466) at org.springframework.beans.TypeConverterDelegate.doConvertValue(TypeConverterDelegate.java:439) at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:192) at org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:117) at org.springframework.beans.TypeConverterSupport.doConvert(TypeConverterSupport.java:70) ... 30 common frames omitted 网上的各种方法都试过了,包括加代码、改代码、换一种方式打包,都不行
0
1
0
浏览量207

履历