PunkMaccccc
vue3 中的 ref 在template中使用必须加.value才生效,为什么?
下面按钮,"测试3" 那个 "disabled" 不生效,为什么?但是后面 "{{options.isDisabled}}" 显示是
"false",必须要像 "测试4" 那样加上 ".value" 才可以,但是 "测试1" 没有加 ".value" 确实正常的,这是为什么?
const isDisabled = ref(false);
const options = {
options: reactive({
isDisabled: false
}),
isDisabled: ref(false),
}
测试1 {{isDisabled}}
测试2 {{options.options.isDisabled}}
测试3 {{options.isDisabled}}
测试4 {{options.isDisabled.value}}
PunkMaccccc
js 事件循环 永不阻塞 如何理解?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250111/f2c1b2725ea1d08b1c92afae796a1297.png)
"文档地址" (https://link.segmentfault.com/?enc=yPCNTIypg7IOrOeOdGk5mA%3D%3D.3%2Bz7lIy0l7aBdA7682pgGgZ9aUrvV6TAOTIWVVUTngeG057ZxKe7hs3YBVagkIFj7ha1rlthtP6FXDNGKZlGUZKjdPpxRsF2vQeqzMoNb4h0AqEAuJtwRKKfbliCAV%2BWSwCKMTzQxFpcuKhMUHnVcA%3D%3D)
写个死循环,堵塞渲染主线程不算吗?
还是其他线程的操作失败后仍然允许执行渲染主线程后续操作,这算不上"永不阻塞"吧。
PunkMaccccc
前端 不规则进度条,求好的思路?
感谢大家的解答,忘了说是小程序,小程序中稍微麻烦些,需要读取svg文件(需要用binary方式读取,不然iOS不显示),然后查找替换高度和颜色部位的值,再转为base64加载到image标签中。其实如果在web端,直接用变量控制即可。svg代码见文末。
大致效果:
https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250108/19b26323be514486694c16528f74ff29.png
动态高度的关键在于,查找并修改“蒙版”的高度,即下面的height="104",通过js控制变量即可实现动态高度。
至于修改颜色,查找fill="#06CB60",然后改成需要的颜色。
水塔svg代码。
PunkMaccccc
请教一下c语言数组问题?是什么问题导致程序一会能行一会不行?
1. 这并不是排序,只能说是按照某种顺序进行打印输出。
2. 不能,两者并不是等价的。前者在条件表达式为 "false" 时,什么都不会做,但在后者中,会导致另一种输出出现。
举几个测试例子:
// 两者表现一致
[1, 3, 5, 2, 4, 6];
// 两者表现不一致
[1, 2, 3, 4, 5, 6];
可以看出来,除非数组本身已经达成了一种顺序(奇数在一端,偶数在一端),否则这种修改就会导致程序表现「不对劲」。
PunkMaccccc
phpstorm中配置docker远程解释器?
想使用docker中的php环境来进行单元测试。所以就要配置远程解释器。
在phpstorm中配置docker远程解释器,如下图:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250102/e99e27a5981a8d835d0dcf6822a69f2d.png)
错误如下:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250102/580ac810a954d304268c07b5cdb0c02a.png)
在容器中执行/www/server/php/82/php是没有问题的。为何这里找不到容器中的php可执行文件呢?
PunkMaccccc
官网项目纯html怎么工程化打包部署?
公司官网项目,html+jquery+css+图片,如何工程化打包部署?
PunkMaccccc
fetch 如何发送复杂表单到PHP后台,接收并存储?
1. 一般来说不建议把复杂的表单混着文件上传一起做
2. 最好单独做一个上传功能,上传完成后,把文件地址保存到表单里
3. 然后一起提交一个大 json
4. 否则万一文件上传失败,整个表单都要重新上传,很容易出问题
PunkMaccccc
微信的这种视频如何下载?
«"http://www.tiantianjiexi.com/network/shipinhao.html" (https://link.segmentfault.com/?enc=%2B2iutSbXE6Zr0iAl%2FWS1Uw%3D%3D.iMTIQg3d%2BzFNKD2TRPXgyGUr8M8O4AkRXDLe5ftsH%2FghbM%2F9kmvxND6bHuiu0JLZK8YY8yErnuim3Dy6nSc8Ow%3D%3D)»
这类工具一大堆,这是我随便找的一个。
PunkMaccccc
rust reqwest get请求中文乱码如何解决?
use reqwest;
// 定义一个自定义错误类型,可以保存 InvalidHeaderValue 或 reqwest::Error。
#[derive(Debug)]
enum MyError {
InvalidHeader(reqwest::header::InvalidHeaderValue),
Reqwest(reqwest::Error),
}
impl From for MyError {
fn from(error: reqwest::Error) -> Self {
MyError::Reqwest(error)
}
}
#[tokio::main]
async fn main() -> Result {
// 创建一个 reqwest 客户端。
let client = reqwest::Client::new();
// 定义 User-Agent 值;用你实际的 User-Agent 替换它。
let user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36 Edg/117.0.2045.31";
let accept = "Accept: */*";
let accept_encoding = "Accept-Encoding: gzip, deflate, br";
let connection = "Connection: keep-alive";
let content_type = "Content-Type: application/json; charset=UTF-8";
// 创建一个请求构建器,设置 URL 和头部。
let response = client
.get("https://api.bilibili.com/x/space/wbi/arc/search?mid=259333&ps=1&pn=1")
.header(reqwest::header::USER_AGENT, user_agent)
.header(reqwest::header::ACCEPT, accept)
.header(reqwest::header::ACCEPT_ENCODING, accept_encoding)
.header(reqwest::header::CONNECTION, connection)
.header(reqwest::header::CONTENT_TYPE, content_type)
.send()
.await?;
let body = response.text().await?;
println!("{:?}", body);
Ok(())
}
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241225/21ac3146dcbd885e9c87eaa039e37e51.png)
思路一:更改编码 本人尝试无效
思路二:编译器编码问题 不知从何入手未尝试
思路三:需要处理gzip 本人尝试无效
希望大佬们可以赐教
PunkMaccccc
大数组查找优化的一个问题?
const arr1 = [2, 4, 5, 7, 10];
const arr2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 1, 12, 5];
// 直接用 includes 来判断是否存在于 arr1 中
const r1 = arr2.filter(n => !arr1.includes(n));
console.log(r1);
// [1, 3, 6, 8, 9, 11, 1, 12]
// 如果 arr1 也比较大,可以先生成集合,通过集合来检查会更快;生成集合的同时也可以去重
const arr1Set = new Set(arr1);
const r2 = arr2.filter(n => !arr1Set.has(n));
console.log(r2);
// [1, 3, 6, 8, 9, 11, 1, 12]
如果你确实需要通过 "splice" 来修改原数组,可能从最后一个元素开始,按逆序来处理,这样就不存在索引移位的问题。不过理论上来说,删除索引是个重量级操作
—— 对真数组来说,每次删除元素都会造成后面的所有元素重排,非常耗时。
如果又想改原数组,又想优化,就需要自己写算法。假如你的是作业,那么接下来的东西就是你需要写的内容了:
1. 找到第一个需要删除的位置 "x",记录 "s = x"
2. 从 "x + 1" 开始找到下一个不需要删除的位置 "y"
3. 从 "y + 1" 开始找到再下一个需要删除的位置 "z"
4. 将从 "y" 到 "z"(不含)之间的元素挪到 "s" 处,记录结束位置 "p"(此时 "p = s + (z - y)")
5. 赋值 "s = p; x = z",从第 2 步开始重复处理
6. 注意上述循环的退出条件和剩余处理
大概画了个示意图,看你能懂不
"snipaste_2023-09-26_15-41-17.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241221/ea593b1c89664a176ec7884101784e6a.png)
PunkMaccccc
虚拟列表视图外的元素如何滚动到视图内呢?
如题,请教各位大佬一个问题:虚拟列表中未展示的某个元素如何手动滚动到页面视图范围内?
非虚拟列表可以使用scrollTo()和scrollIntoView(),虚拟列表中不在视图范围内的元素是不在文档流里面的,没法使用上述方法
使用的是antd tree组件,设置height之后开启的虚拟列表,没找到相关控制虚拟列表的api
PunkMaccccc
字体包引入,字体没起作用什么原因?
先排查一下url路径对不对,可以在控制台抓下字体文件的请求,看下成功没
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241209/52ae58633614ea95f88e141ab0b2cf52.png)
PunkMaccccc
疑惑:vue3使用props传递数据的时候,该属性是一个对象,实际情况下,到底推不推荐在子组件直接修改对象内部的属性?
假如父组件中是这样一个复杂的对象,传递给多个子组件,不同子组件要处理该修改中不同的属性,我目前的处理是直接在子组件中修改如"props.params.approveStatus = 2",当然官方并不推荐这种处理,实际情况如何处理更好一些呢?
const params = ref({
approveStatus: 0,
attachment: [],
bidDeadline: '',
bidFileValid: 0,
bidId: null,
bidMode: '',
bidNo: '',
bidScope: '',
bidScopeAttachment: [],
bidStage: 'initiate',
bidTitle: '',
buyMode: 1,
contact: '',
createBy: '',
createTime: '',
enterpriseId: 0,
flag: 0,
inquiryMethod: '',
inquiryMethodAttachment: [],
instanceId: 0,
labelType: 0,
promoterUserId: 0,
promoterUserName: '',
remark: '',
requestionDeadline: '',
sampleMode: 1,
status: 0,
supplierRecommenderId: null,
supplierRecommenderName: '',
technicalStandard: '',
technicalStandardAttachment: [],
updateBy: '',
updateTime: '',
valid: ''
})
PunkMaccccc
为什么设置了块布局 flex-direction 依然影响样式?
看起来是内核的原因,在 "Chrome" 中也是一样的。因为按照标准来说 "flex-direction" 属性只会在弹性布局中生效。
如果有精力的话,可以在社区发起问题反馈。👉 "Issues -chromium" (https://link.segmentfault.com/?enc=sf3BQIsOP8N9aabiW4ph3Q%3D%3D.4vqoaIRH6U0gSIcn9wCK0VsgiLiXaiw9uplX94dDLQOGE%2FM9zpa5Sl5CCCqPjLDpjuYL9SUMn7dRyDGXlOg29g%3D%3D)
PunkMaccccc
如何使用golang os\exec包,操控一个交互试命令程序?
«首先下面代码是有问题,大佬看一下代码,这个输入这里应该有问题,或者这个库不支持这样的持续交互吗?»
package main
import (
"fmt"
"io"
"os/exec"
"time"
)
func main() {
// 进行字符串的替换,把小写字母替换成大写字母
cmd := exec.Command("tr", "a-z", "A-Z")
var (
err error
stdout io.ReadCloser
stdin io.WriteCloser
)
stdout, err = cmd.StdoutPipe()
if err != nil {
panic(err)
}
stdin, err = cmd.StdinPipe()
if err != nil {
panic(err)
}
if err = cmd.Start(); err != nil {
panic(err)
}
// 这里协程给tr命令输入标准输入的 小写 abc 字符串
go func() {
for {
time.Sleep(time.Second)
stdin.Write([]byte("abc"))
}
}()
// 然后这里从标准输出读到上面输入后tr命令转换后的大写字符串 ABC,但这里没有读到,不知道为什么
for {
data := make([]byte, 512)
n, err := stdout.Read(data)
fmt.Println(string(data[:n]), err)
}
}
PunkMaccccc
[AMH]CentOS9安装postfix失败,请问怎么解决?
这是我的部分安装日志
[Notice] postfix-3.5 is not installed.
[db*-devel Installing] ************************************************** >>
Last metadata expiration check: 0:36:46 ago on Wed Nov 1 19:22:24 2023.
Package dbus-devel-1:1.12.20-8.el9.x86_64 is already installed.
Package dbus-glib-devel-0.110-13.el9.x86_64 is already installed.
Package dbusmenu-qt5-devel-0.9.3-0.28.20160218.el9.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
[db4-devel Installing] ************************************************** >>
Last metadata expiration check: 0:36:48 ago on Wed Nov 1 19:22:24 2023.
No match for argument: db4-devel
Error: Unable to find a match: db4-devel
[libdb-devel Installing] ************************************************** >>
Last metadata expiration check: 0:36:49 ago on Wed Nov 1 19:22:24 2023.
Package libdb-devel-5.3.28-53.el9.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
Creating mailbox file: File exists
useradd: user 'amh-mail' already exists
Last metadata expiration check: 0:36:51 ago on Wed Nov 1 19:22:24 2023.
Dependencies resolved.
好像db4-devel没有找到,然后末尾还有一部分日志
DDEF_SENDMAIL_PATH=\"/usr/local/postfix-3.5/usr/sbin/
sendmail\" -DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\"dovecot\" -DHAS_DEV_URANDOM -DHAS_PCRE -UUSE_DYNAMIC_LIBS -DDEF_SHLIB_DIR=\"no\" -UUSE_DYNAMIC_MAPS -Wmissing-prototypes -Wformat -Wno-comment -fco
mmon -g -O -I. -DLINUX5 -c dict_nis.c
dict_nis.c:42:10: fatal error: rpcsvc/ypclnt.h: No such file or directory
42 | #include
| ^~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:192: dict_nis.o] Error 1
make: *** [Makefile:94: update] Error 1
postfix-install: Error: no bin/postconf file. Did you forget to run "make"?
chown: cannot access '/usr/local/postfix-3.5/var/spool/postfix/private': No such file or directory
chown: cannot access '/usr/local/postfix-3.5/var/spool/postfix/public': No such file or directory
chown: cannot access '/usr/local/postfix-3.5/var/spool/postfix/public': No such file or directory
按照思否上搜到的postfix无法安装的答复内容执行了
yum install db*-devel
Last metadata expiration check: 0:40:55 ago on Wed 01 Nov 2023 07:22:24 PM CST.
Package dbus-devel-1:1.12.20-8.el9.x86_64 is already installed.
Package dbus-glib-devel-0.110-13.el9.x86_64 is already installed.
Package dbusmenu-qt5-devel-0.9.3-0.28.20160218.el9.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
感谢amh的回答,我按照在centos.pkgs.org找到的安装方法执行
dnf --enablerepo=crb install libnsl2-devel
Total 282 kB/s | 145 kB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : libtirpc-devel-1.3.3-2.el9.x86_64 1/2
Installing : libnsl2-devel-2.0.0-1.el9.x86_64 2/2
Running scriptlet: libnsl2-devel-2.0.0-1.el9.x86_64 2/2
Verifying : libnsl2-devel-2.0.0-1.el9.x86_64 1/2
Verifying : libtirpc-devel-1.3.3-2.el9.x86_64 2/2
Installed:
libnsl2-devel-2.0.0-1.el9.x86_64 libtirpc-devel-1.3.3-2.el9.x86_64
Complete!
成功安装libnsl2-devel
在面板安装postfix也成功安装上了,最后再次感谢amh的答复,本以为要等十天半月我的提问才会被注意到,居然有这么快的回复效率,点赞!!!👍👍👍
PunkMaccccc
AMH7 nginx环境如何禁止通过IP访问网站?
AMH7 nginx环境如何禁止通过IP访问网站?
是直接在vhost/ip.conf里修改server配置吗?
在尾部新增了server也没有生效,求助!
"7Y6YR(CBG5`R@A)XL8~SKEA.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241126/d234f7ba4269ede19418bed985bf81c9.png)
PunkMaccccc
如何判断一个function是否是函数式组件?
如何判断一个function是否是函数式组件?
我们有如下的函数式组件代码:
import React, { useEffect, useState } from 'react'
import { Card } from 'antd';
const CPU = () => {
const [aaa, setAaa] = useState('123') // 这行会报错
console.log(aaa)
return (
Card content
)
}
export default CPU
但是当我运行的时候报错:
Invalid hook call. Hooks can only be called inside of the body of a function component.
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241123/f8621d631fd7194e2c5c45e655ef8320.png)
这里说"Hooks can only be called inside of the body of a function component. "但是我这个就是一个函数式组件呀,请问如何进行判断是否是函数式组件呢?
注:
我的文件路径在:
src/renderer/pages/localtools/machine/cpu.tsx
代码就是如上。没有看到有写错的地方呢,如何能判断我写的这个是函数式组件呢?
PunkMaccccc
gitlab,当前账号有合并权限,但是没有push权限,那么当前账号也需要给自己建立合并请求才能提交吗?
是的,但是不是只限于 beta 分支嘛。
alpha 相关的应该是随便 push。更不用说普通 dev 分支了
PunkMaccccc
SQL保存歷史表方式研究?
你也可以使用数据库的触发器来实现自动insert
PunkMaccccc
前置守卫中to参数问题,发版测试环境就报错了?
这是因为你试图"strigify"的对象包含循环引用,类似下面的情形:
const a = {};
const b = { a };
a.b = b;
JSON.stringify(a);
打个断点分析一下参数里为什么会有循环引用,相应解决即可。
PunkMaccccc
google浏览器长时间网站不操作,nginx无请求反应?
自己开发的项目,在本地打开一段时间不操作,然后在想去操作的时候,发现所有ajax请求都不到nginx中去,刷新页面又好了,请问这是什么情况呢?
PunkMaccccc
antd排序后的表格怎么找到指定的数据的当前位置?
我现在有一个id,要求是找到id对应的那条表格数据它所在的页数。表格有个排序功能,排序后的表格数据和原数据顺序是不一样的,不能用原数据.findIndex来查找。怎么办?
我使用onChange来获取排序后的数据,但是表格数据是会更新的,而onChange是只有排序的时候触发了一次,表格数据更新是不会触发的,拿不到最新数据。
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241109/f209c226c41fc7dc751c535b0b9fe0b1.png)
PunkMaccccc
form.getFieldValue返回的值不是响应式的吗?
form.getFieldValue返回的值不是响应式的吗?
"34d79ad4636b4612b15e2b7bca19926.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241108/c6f089b1ea289a60339734ff7e5f5431.png)
react新手, 请问在页面改变了radio的值, 但是第一行代码对应的内容在页面上为什么不发生变化
PunkMaccccc
Java 中如何给 Excel 的单元格设置超链接?
Java 中如何给 Excel 的单元格设置超链接
我想导入一个excel文件,并且通过java代码给某个单元格设置超链接(业务需求)。请问大家有什么思路没
PunkMaccccc
vue 如何将组件中的 html 代码提取为模板方式定义在组件中?
根据你的描述,感觉你可以把它封装成为一个组件,然后通过Vue的事件透传,属性透传来实现。这个思路跟组件的二次封装是一样的。不知道我的想法对不对,希望可以帮助到你。
PunkMaccccc
这两个正则有啥区别,为什么第一个会匹配到 @ 和 = ,而将 \\ 后置后则正常?
你这个发出来的应该经过转义了,不是原本的正则吧,用我看到的上面是false,下面报错
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241030/b18ed3dbc5ff1995996bcf9795208037.png)
不过可以猜到,主要原因在于"-"是字符范围,比如"0-9"表示"0123456789"9个数,"a-z"表示"abcd....z"。他们在匹配的时候是根据字符在ASCII码中的大小进行匹配的,比如"'@'.charCodeAt()"是64,"','.charCodeAt()"是44,"'/'.charCodeAt()"是47,64不在44到47内,就匹配不上
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241030/83db2df1cbb53a78e8aa9a47a56eb78d.png)
PunkMaccccc
请问有共享 Chrome 跟 Edge 的浏览器标签(书签)管理插件或是工具吗?
请问有共享 Chrome 跟 Edge 的浏览器标签(书签)管理插件或是工具吗?
像是 Lastpass 在不同浏览器之间可以共用账号密码管理
但是目前还找不到 bookmark 的共享管理工具
PunkMaccccc
Koa中间件ctx.request.body为何是字符串?
koa 中间件获取的 ctx.request.body 的typeof为什么会是字符串呢
这边是使用了koa-body解析body数据
下面是index.js 引入koa-body
const Koa = require('koa');
const { koaBody } = require('koa-body');
const userRouter = require('../routers/user.route');
const app = new Koa();
app.use(koaBody());
app.use(userRouter.routes());
const errHandler = require('./errHandler')
// 统一的错误处理
app.on('error', errHandler)
module.exports = app
route文件中,post 传 ctx.request.body给中间件 (打印发现是字符串)
const Router = require('koa-router');
const router = new Router({ prefix: '/user' });
//中间件
const { userValidator, verifyUser, crpytPassword } = require('../middleware/user.middleware')
const { register, login } = require('../controller/user.controller')
//GET user
// router.get('/', async (ctx, next) => {
// ctx.body = 'user';
// });
//POST
// 合法性 合理性 加盐 register
router.post('/register', userValidator, verifyUser, crpytPassword, register)
router.post('/login', login)
module.exports = router;
中间件打印是字符串
//加密
const crpytPassword = async (ctx, next) => {
console.log(typeof ctx.request.body,'---------------');
return
const { password } = ctx.request.body
const salt = bcrypt.genSaltSync(10)
// hash保存的是 密文
const hash = bcrypt.hashSync(password, salt)
ctx.request.body.password = hash
await next()
}
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241026/84168b34b291616a520ddbd973ef4a10.png)
无
PunkMaccccc
浏览器文件中转优化方式?
fetch('/file.zip').then((resp) => {
fetch('/upload', { body: resp.body, method: 'POST', duplex: 'half' });
});
注意:目前safari不支持请求流; http1.1不支持请求流,需要HTTP2以上的协议版本
参考: "https://developer.chrome.com/docs/capabilities/web-apis/fetch..." (https://link.segmentfault.com/?enc=h1KnZIr1eyWoTUI7q6Fffw%3D%3D.p60o0Hj1hIyWuvfhmpBuwhsngrwwR8Srbv46hdCzSLRhNymD%2B97jwncQq1oyVC9QTa327VyITEMiluM31%2BgGkY7K%2FDP9%2Bs4LAfPRncd3r3v%2BactX38YAOmZ5q3q%2Ft0iC)
PunkMaccccc
使用JSON.parse解析字符串失败?
智谱轻言的指令跟随性很差,输出的不一定是 json
«message 里面可能会少一些引号,可能没有处理转义符等等»
为了解析智谱的输出,我写了很复杂的正则表达式
PunkMaccccc
必须为10位正整数的正则表达式?
如果要求首位不为0,则 "^[1-9][0-9]{9}$"。
如果可以接受 "0000000001" 这种有前缀0的,那就是 "^\d{9}[1-9]$" 排除一下 0。
PunkMaccccc
js拓扑图怎么画?
画拓扑有专门的组件的:
«"https://juejin.cn/post/6844903880854077447" (https://link.segmentfault.com/?enc=IFRt1x41tPtyH3gWs63How%3D%3D.ky0YbA6Om1jt3WVKLPTfKSSAknRCyR8pMm73rx7cyaCp0xF04TrbO0ZkcL76JIoZ)»
如果你的拓扑图是这种固定结构的, 只是文字高亮变一下, 也可以用CSS画
PunkMaccccc
echarts中怎样实现部分线段画虚线?
echarts中怎样实现部分线段画虚线?代码如下,目前可设置整体虚线,但不会设置某条线条为虚线。
let charts = {
nodes: [
{ name: '1', value: [0, 700] },
{ name: '2', value: [200, 700] },
{ name: '4', value: [300, 700] },
{ name: '5', value: [400, 700] },
{ name: '9', value: [600, 700] },
{ name: '15', value: [900, 700] },
{ name: '17', value: [960, 700] },
],
linesData: [
{ name: '降水1(10天)', coords: [[20, 700], [190, 700]], type: "dotted" },
{ name: '开挖1\n(5天)', coords: [[220, 700], [290, 700]] },
{ name: '砂石垫层1\n(5天)', coords: [[320, 700], [390, 700]] },
{ name: '混凝土基础1(10天)', coords: [[420, 700], [590, 700]] },
{ name: '混钢筋混凝土安装1(15天)', coords: [[620, 700], [890, 700]] },
{ name: '土方回填1\n(3天)', coords: [[920, 700], [950, 700]] },
]
}
let option = {
xAxis: {
min: 0,
max: 2200,
show: false,
type: "value",
},
yAxis: {
min: 0,
max: 1000,
show: false,
type: "value",
},
grid: {
left: 50,
right: 0,
bottom: 0,
top: 0
},
tooltip: {
show: false,
axisPointer: {
type: "shadow",
},
borderColor: "white",
backgroundColor: "white",
borderWidth: 1,
padding: 5,
textStyle: {
fontSize: 14,
color: '#333',
},
},
series: [
{
type: "graph",
coordinateSystem: "cartesian2d",
symbol: "circle",
symbolSize: [40, 40],
// edgeSymbol: ['', 'arrow'],
// edgeSymbolSize: [1, 10],
lineStyle: {
normal: {
width: 0,
color: 'green',
}
},
itemStyle: {
color: "rgb(194, 194, 194)",
},
symbolOffset: [10, 0],
force: {
edgeLength: 100,
repulsion: 150
},
label: {
show: true,
color: '#333',
},
data: charts.nodes
},
{
type: "lines",
polyline: false,
coordinateSystem: "cartesian2d",
symbol: ['', 'arrow'],
symbolSize: 10,
label: {
show: true,
position: "middle",
fontSize: 16,
color: '#333',
formatter: function (args) {
},
},
lineStyle: {
color: '#65B7E3',
width: 2,
},
data: charts.linesData,
},
],
};
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241016/33783cde7fca4e78bf70dd0378f89112.png)
{ name: '混钢筋混凝土安装1(15天)', coords: [[620, 700], [890, 700]] },
比如在上面这行代码中是否可设置参数实现虚线呢?
lineStyle中设置type: "dashed"可实现虚线,
PunkMaccccc
长方形使用rotate旋转任意角度后,怎么计算旋转后长方形在画布上的xy的轴距?
画布宽高为1920 1080,在里面添加一个长方形,宽高为200 20,长方形在画布的坐标xy为100
100,这个长方形使用rotate旋转任意角度后,怎么计算旋转后长方形在画布上的xy的轴距
未旋转
"未旋转" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241016/ff3c2ab6a6bddbc7e7eb3adfe4d09f80.png)
旋转30度
"旋转30度" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241016/5b05022a98936012206fbf67af9438af.png)
旋转76度
"旋转76度" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241016/e0b5b4cccf51718336330e1cfddba7bf.png)
如何平均计算每次随机旋转后长方形距离左上角画布的Xy
算数不行,问了gpt试验之后也不正确
PunkMaccccc
PHP strtotime函数与时区问题?
我在使用PHP strtotime函数是,遇到了+9时区的问题。
$first_day = strtotime($year.'-'.$i.'-01 00:00:00');
return json($first_day);
得到的结果是 2024-01-01 09:00:00
请问到底该怎么解决才能使 strtotime 直接得到0点的时间戳?
我检查了系统的时区,timedatectl 返回的结果
Local time: Wed 2024-01-03 22:15:09 CST
Universal time: Wed 2024-01-03 14:15:09 UTC
RTC time: Wed 2024-01-03 14:15:09
Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
PHP date_default_timezone_get() 返回的是PRC。
即便使用 DateTime 得到的依然是2024-01-01 09:00:00。
new DateTime($year.'-'.$i.'-01', new DateTimeZone('Asia/Shanghai'));
PunkMaccccc
React 中如何正确的将多个路由打包给外部调用?
将" " 改成 "{AuthRoutes()}" 就行了
PunkMaccccc
将rawfile中json格式的字符串转换成对应的object对象后,调用实例方法后程序崩溃?
解决措施
通过json解析字符串得到的对象的原型是object,其原型链中不存在自有的实例方法,故无法调用。
如需调用该方法,则有以下两种方式:
1. 在解析后的对象上添加对应的原型。
2. 将该实例方法改为静态方法,通过类名去调用。
PunkMaccccc
用UNAIPP写APP怎么获取当前页面的标题?
一级菜单获取的是undefined,但是二级菜单能获取到了,我这个问题官方有实现吗,怎么AI都不给我回答了
补充一下,页面标题写在pages.json 里面
{
"path" : "pages/payment/OrderConfirm",
"style" :
{
"navigationBarTitleText": "收银",
"enablePullDownRefresh": false
}
}
因为我有些页面有些用到的自定义标题,所以获取不到、用了自定义标题组件需要获取标题在组件内部拿到了
PunkMaccccc
安装 electron 失败?
官方有一个 "安装指导 | Electron" (https://link.segmentfault.com/?enc=rs1j2%2B%2F7vMMTB1FF9hxKog%3D%3D.yuL%2BVoV2gwmMoBGupkvYoIQpBD5ra39aTvQR5CUrbtsOHSJQPaeKDePAfrbJWBKNRHoVyWtMz5o60OoreBKMqQ%3D%3D) 这样的教程的。中间一些安装过程中问题都是有提到的。
一般来说安装失败就是一个原因:直接使用的 "npm" 源下载 "Electron" 的预编译二进制文件,造成的超时问题。可以通过挂代理、切换镜像源
或者手动下载解决。
不过现在直接使用 "npm" 源应该也是没问题的,而且也不会有缺失镜像的问题,淘宝镜像中是有一些版本的 "electron"
镜像缺失的,我在早些时候的遇到过这样问题帖。
***
中文站中的 "ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"" 命令也是为了覆盖
"electron/get" (https://link.segmentfault.com/?enc=nfdledCep%2FnRM%2BNzrqg%2Bzw%3D%3D.VokpLK4T4AsLd4tR1L8UW9Y2yCZyqhvQsQ7ic%2FQA13L3UsEc2Xjtv4Ssuif5ROcI)
or "electron-download" (https://link.segmentfault.com/?enc=EtEiofhhZ%2FiUxoLPcMtT2g%3D%3D.Mk4%2F3OISyJExMlomshhZi6qjdSvhOiR1tqTpa2guiiIJfkrJqylDwrmddaOGK1Xr)
的请求地址去使用阿里镜像源。而如果你检出的仓库比较旧了,很可能请求的镜像地址仍是被停用的 "https://npm.taobao.org/"
"The following error is reported when using yarn to add an electron
dependency: RequestError: certificate has expired · Issue #41089 ·
electron/electron" (https://link.segmentfault.com/?enc=Qk0oH6ZBr9y1PYneSrXpUQ%3D%3D.7ethLkg1kueeJ10JOtCcVIcy7Y9P9ZI5i%2BPChBMACu8xogBk9uyi5heaxqd2Oy65rvv2DqWKzSc4IvjewWq%2B1w%3D%3D)
PunkMaccccc
数据格式转换不成功?
"{"id":2416,"name":""警告"今天大雪"}"
这个数据确实有问题。如果想硬处理,需要自己写解析器。最好还是请后端给出规范的数据。
如果是 2 次 JSON,应该是这样的数据
"{\"id\":2416,\"name\":\"\\\"警告\\\"今天大雪\"}"
«2024-01-30 21:54:44 补一句»
像这种数据不需要二次 JSON,后端一个 List 直接序列化成 JSON 就可以的啊
PunkMaccccc
Python中如何删除三层嵌套字典中最里层为相同value(value是dict类型)的键?
def remove_replicated(o_d: dict):
d_c = o_d.copy()
for k, v in d_c.items():
v_dicts = list(v.values())
v_0 = v_dicts[0]
all_same = all(v_0 == i for i in v_dicts)
if all_same:
del o_d[k]
remove_replicated(dict1)
print(dict1)
这个可以满足你。。。
PunkMaccccc
axios如何在使用全局拦截器的情况下为某个请求单独设置响应拦截?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241011/15c035e298a4cff0ce87938e06e7be79.png)
axios如何在使用全局拦截的情况下为某个请求单独设置响应拦截?如图,这里响应出现异常,会直接弹出异常提示,但是某些接口我不想直接弹异常,所以有没有什么比较好的方法能再度拦截一下?本来想着如果可以传入一个回调,没传就执行默认异常逻辑,但是琢磨了半天好像这个回调不好实现啊
PunkMaccccc
为什么变量被编译器声明为const?
变量被编译器声明为const,导致无法编译
#include
#include
class Widget {
public:
void addFilter() const;
private:
int divisor;
using FilterContainer =
std::vector>;
FilterContainer filters;
};
void Widget::addFilter() const
{
filters.emplace_back(
[=](int value) { return value % divisor == 0; }
);
}
int main()
{
;
}
"3cfb0110448c37089ccff8e55b40621.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241010/6ddb0b04dc96388867477bc82a85e4f7.png)
PunkMaccccc
流式布局,长项换行后,后面的短项自动补位,有无简单方法?
从上图来看,5是无法单纯通过css绕过4去补位的。
感觉只能用js来实现,也就是js方式的瀑布流布局。
PunkMaccccc
Vue.js与Vuetify怎么实现可编辑的表格单元格?
vue-vuetify怎么实现表格单元格可编辑,并且能获取到输入的值呢?
PunkMaccccc
如何在MySQL中高效处理多表插入操作?
会excel吗?也可以"在excel中处理好数据,navicat直接导入excel"。以【角色信息表】、【科目表】为例:
1)"导入"【科目表】数据
2)"导出"【科目表】数据为excel文件("包含科目表id"),为"E1"
3)将【角色信息表】".csv文件转为excel,为E2"。用excel的"vlookup函数",将E2中的 "科目表名称 替换为"E1中的 "科目表id"
......
这个会替换操作之后,其他的也是替换为对应的id,然后再将整理好的excel导入
PunkMaccccc
ruoyi-ui配置多个域名,在开发环境调用服务器接口地址问题,配置后接口一直为404问题?
问题描述的有点多,稍微整理了一下内容排版,但是依旧混乱。主要是之后一段的描述。
看情况你们是有在 Nginx 中有配置 "/proxy-api" 的代理转发,所以你在前端项目配置代理的时候通过 "pathRewrite" 去掉了
"/proxy-api" 导致Nginx转发的时候没有命中,所以请求尝试的是前端项目,并不是API的代理转发。就会出现404的情况。
所以得看你们具体情况去做处理。比如说已经由Nginx转发了,就统一由Nginx来处理,Nginx配置中新增一个 "/proxy-api/v2"
的转发就好了。然后前端请求新API的时候,默认的API前缀就从 "/proxy-api" 调整成 "/proxy-api/v2"
如果不通过NG转发,那么前端就直接代理到后端的接口地址上面,而不是原来NG的代理转发请求。
***
总的来说,postman请求后端接口没问题,前端代理出现404的情况:
1. 本地的 "devServer.proxy" 配置有问题,发起请求的时候,请求的接口URL就是错误的,没有正确被本地代理捕获转发。
2. 本地的 "devServer.proxy" 配置有问题,"pathRewrite" 的时候把接口 URL 改写为了错误的URL,导致后端/Nginx转发的时候没有命中。
PunkMaccccc
amh面板配置dns接口为cloudflare,申请ssl证书报错:[Error] cf-api is not exist.?
这个是找不到api数据记录,添加dns记录的名称是否有什么特殊符号,
按面板选项旁边的说明填写,使用英文字母或数字。
密钥两项,Cloudflare 使用 Zone ID与Token(dns类型的)选项旁边也有说明。
PunkMaccccc
Antd Form中动态设置Form.Item的值无效?
虽然不知道原因,但是我把Component封装过的 Select 和Input 添加了一个defaultValue,设置为初始值,就可以了