满脑子智慧溢出
为什么文件扩展名为 PNG,但服务器返回的 Content-Type 是 video/mp4?
不如先问问,扩展名跟 Content-Type 跟有什么必然联系吗?
***
看题主用的是 OSS,这玩意儿是可以随便改的:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250112/690b5f1977cbdbbe2459b8c1aa6e0120.png)
满脑子智慧溢出
C语言文件中的小数输出是0.0?
include
include
include
define MEDICINE_FILE "medicine.txt" //药品文件名
typedef struct medicine
{
char drug_name[100]; //药品名
int drug_number; //药品编号
int price; //售价
int num; //药品剩余数量
} medicine;
struct med
{
medicine medicine_array[500]; //存放药品的数组
int size; //数组已使用的大小
} med;
//与药品操作相关函数
void showMenu(); //打印菜单
void read_medicine_file(); //从文件中读入药品信息
void add_medicine(); //添加药品信息
void show_medicine(); //查看所有药品信息
void drug_name_del(); //按名称删除药品信息
void drug_number_revise(); //按编号修改药品信息
int drug_number_find(int num); //按编号查找药品信息,返回下标
void show_drug_number_find(); //输出查找到的药品信息
int drug_name_find(char *name); //按姓名查找药品信息,返回下标
void show_drug_name_find(); //按姓名查找药品信息,并将药品信息输出
void save_medicine(); //保存药品信息到文件
int main(int argc, char *argv[])
{
int select = 15;
read_medicine_file(); //读取文件中药品的信息
while (1)
{
showMenu(); //打印菜单
while (scanf("%d", &select) != 1 || select 10)
{
printf("输入有误,请重新输入\n");
scanf("%*[^\n]%*c"); //将输入缓冲中所有数据丢弃
}
switch (select)
{
case 0:
//退出程序
exit(0);
break;
case 1:
//添加药品信息
add_medicine();
break;
case 2:
//查看所有药品信息
show_medicine();
break;
case 3:
//按名称删除药品信息
drug_name_del();
break;
case 4:
//按编号修改药品信息
drug_number_revise();
break;
case 5:
//按编号查找药品信息,并将药品信息输出
show_drug_number_find();
break;
case 6:
//按名称查找药品信息,并将药品信息输出
show_drug_name_find();
break;
}
}
return 0;
}
//打印菜单
void showMenu()
{
printf("-----------欢迎来到药房管理系统------------\n");
printf("-------------------------------------------\n");
printf("请输入你要选择的编号:\n");
printf("1、添加药品信息\n");
printf("2、查看所有药品信息\n");
printf("3、按名称删除药品信息\n");
printf("4、按编号修改药品信息\n");
printf("5、按编号查找药品信息\n");
printf("6、按姓名查找药品信息\n");
printf("0、退出本系统\n");
printf("-------------------------------------------\n");
}
//从文件中读入药品信息
void read_medicine_file()
{
FILE *fp = fopen(MEDICINE_FILE, "r");
if (fp == NULL)
{
med.size = 0;
memset(&med.medicine_array, 0, sizeof(med.medicine_array));
}
else
{
while (fscanf(fp, "%s %d %f %d", med.medicine_array[med.size].drug_name,
&med.medicine_array[med.size].drug_number,
&med.medicine_array[med.size].price,
&med.medicine_array[med.size].num) != EOF)
{
med.size++;
}
}
fclose(fp);
}
//添加药品信息
void add_medicine()
{
int flag = 0;
int num; //保存编号用于去重
printf("请输入你要添加的药品的数量\n");
int n, i;
while (scanf("%d", &n) != 1 || n < 0)
{
printf("输入有误,请重新输入\n");
scanf("%*[^\n]%*c");
}
for (i = 0; i < n; ++i)
{
printf("第%d个药品的信息\n", i + 1);
printf("--------------------\n");
printf("请输入药品姓名\n");
scanf("%s", med.medicine_array[med.size].drug_name);
printf("请输入药品编号\n");
med.medicine_array[med.size].drug_number = 0;
do
{
while (scanf("%d", &num) != 1)
{
printf("输入有误,请重新输入!\n");
scanf("%*[^\n]%*c");
}
int ret = drug_number_find(num);
if (ret != -1)
{
printf("该编号已经存在,请重新输入\n");
}
else
{
med.medicine_array[med.size].drug_number = num;
break;
}
} while (1);
printf("请输入药品售价\n");
while (scanf("%f", &med.medicine_array[med.size].price) != 1)
{
printf("输入有误,请重新输入!\n");
scanf("%*[^\n]%*c");
}
printf("请输入药品数量\n");
while (scanf("%d", &med.medicine_array[med.size].num) != 1)
{
printf("输入有误,请重新输入!\n");
scanf("%*[^\n]%*c");
}
flag = 1;
med.size++;
}
if (flag == 1)
save_medicine(); //保存到文件
}
//查看所有药品信息
void show_medicine()
{
int i;
for (i = 0; i < med.size; ++i)
{
printf("%s\t\t\t%d\t\t\t%.1f\t\t\t%d\n", med.medicine_array[i].drug_name,
med.medicine_array[i].drug_number,
med.medicine_array[i].price,
med.medicine_array[i].num);
}
}
//按姓名删除药品信息
void drug_name_del()
{
int flag = 0;
int i, j, n;
char name[100];
printf("请输入你要删除的药品数量\n");
while (scanf("%d", &n) != 1 || n < 0)
{
printf("输入有误,请重新输入\n");
scanf("%*[^\n]%*c");
}
for (i = 0; i < n; ++i)
{
printf("第%d个药品的姓名\n", i + 1);
printf("--------------------\n");
printf("请输入要删除的药品姓名\n");
scanf("%s", name);
int ret = drug_name_find(name);
if (ret != -1)
{
flag = 1;
printf("删除成功,删除的信息为\n");
printf("%s\t\t\t%d\t\t\t%.1f\t\t\t%d\n", med.medicine_array[ret].drug_name,
med.medicine_array[ret].drug_number,
med.medicine_array[ret].price,
med.medicine_array[ret].num);
for (j = ret; j < med.size - 1; j++)
{
med.medicine_array[j] = med.medicine_array[j + 1];
}
med.size--;
}
else
{
printf("未找到该药品,删除失败\n");
}
}
if (flag == 1)
save_medicine();
}
//按编号修改药品信息
void drug_number_revise()
{
int flag = 0;
int i, j, n, number; //保存要修改的编号
int num; //保存新编号,用于去重
printf("请输入你要修改的药品数量\n");
while (scanf("%d", &n) != 1 || n < 0)
{
printf("输入有误,请重新输入\n");
scanf("%*[^\n]%*c");
}
for (i = 0; i < n; ++i)
{
printf("第%d个药品的编号\n", i + 1);
printf("--------------------\n");
printf("请输入要修改的药品编号\n");
while (scanf("%d", &number) != 1)
{
printf("输入有误,请重新输入\n");
scanf("%*[^\n]%*c");
}
int ret = drug_number_find(number);
if (ret != -1)
{
flag = 1;
printf("找到该编号的药品,该药品信息为\n");
printf("%s\t\t\t%d\t\t\t%.1f\t\t\t%d\n", med.medicine_array[ret].drug_name,
med.medicine_array[ret].drug_number,
med.medicine_array[ret].price,
med.medicine_array[ret].num);
printf("请输入新信息\n");
printf("请输入药品新姓名\n");
scanf("%s", med.medicine_array[ret].drug_name);
printf("请输入药品编号\n");
med.medicine_array[ret].drug_number = -1; //将该药品编号改为-1防止新输入的编号和当前编号相同,导致无法成功输入该编号
do
{
while (scanf("%d", &num) != 1)
{
printf("输入有误,请重新输入!\n");
scanf("%*[^\n]%*c");
}
int res = drug_number_find(num);
if (res != -1)
{
printf("该编号已经存在,请重新输入\n");
}
else
{
med.medicine_array[ret].drug_number = num;
break;
}
} while (1);
printf("请输入药品售价\n");
while (scanf("%f", &med.medicine_array[ret].price) != 1)
{
printf("输入有误,请重新输入!\n");
scanf("%*[^\n]%*c");
}
printf("请输入药品数量\n");
while (scanf("%d", &med.medicine_array[ret].num) != 1)
{
printf("输入有误,请重新输入!\n");
scanf("%*[^\n]%*c");
}
printf("修改成功!\n");
}
else
{
printf("未找到该编号的药品\n");
}
}
if (flag == 1)
save_medicine();
}
//按编号查找药品信息,返回下标
int drug_number_find(int number)
{
int i;
for (i = 0; i < med.size; ++i)
{
if (number == med.medicine_array[i].drug_number)
{
return i;
}
}
return -1;
}
//输出查找到的药品信息
void show_drug_number_find()
{
int number;
printf("请输入要查找的编号编号\n");
while (scanf("%d", &number) != 1)
{
printf("输入有误,请重新输入\n");
scanf("%*[^\n]%*c");
}
int ret = drug_number_find(number);
if (ret == -1)
{
printf("未找到\n");
}
else
{
printf("找到了,信息为\n");
printf("%s\t\t\t%d\t\t\t%.1f\t\t\t%d\n", med.medicine_array[ret].drug_name,
med.medicine_array[ret].drug_number,
med.medicine_array[ret].price,
med.medicine_array[ret].num);
}
}
//按姓名查找药品信息
int drug_name_find(char *name)
{
int i;
for (i = 0; i < med.size; ++i)
{
if (strcmp(name, med.medicine_array[i].drug_name) == 0)
return i;
}
return -1;
}
//按姓名查找药品信息,并将药品信息输出
void show_drug_name_find()
{
char name[100];
printf("请输入你要查找的药品姓名\n");
scanf("%s", name);
int ret = drug_name_find(name);
if (ret == -1)
{
printf("未找到\n");
}
else
{
printf("找到了,药品信息为\n");
printf("%s\t\t\t%d\t\t\t%.1f\t\t\t%d\n", med.medicine_array[ret].drug_name,
med.medicine_array[ret].drug_number,
med.medicine_array[ret].price,
med.medicine_array[ret].num);
}
}
//保存药品信息到文件
void save_medicine()
{
int i;
FILE *fp = fopen(MEDICINE_FILE, "w");
if (fp == NULL)
{
return;
}
for (i = 0; i < med.size; ++i)
{
fprintf(fp, "%s %d %f %d\n", med.medicine_array[i].drug_name,
med.medicine_array[i].drug_number,
med.medicine_array[i].price,
med.medicine_array[i].num);
}
fclose(fp);
}
文件
999感冒灵 1 14.9 200
氯雷他定片 2 65.0 150
肠炎宁片 3 28.0 150
布洛芬胶囊 4 29.8 230
板蓝根颗粒 5 23.8 300
输出的为什么是这样子的
999感冒灵 1 0.0 200
氯雷他定片 2 0.0 150
肠炎宁片 3 0.0 150
布洛芬胶囊 4 0.0 230
板蓝根颗粒 5 0.0 300
满脑子智慧溢出
请问WebRTC中 sdp是什么意思?
«WebRTC 建立对等连接
建立对等连接的前提:连接双方必须要知道对方 IP 地址,支持的媒体类型、音视频编码等信息。本地连接:如果两个设备处于局域网中,不用做任何的处理,只需要使用信令服务器获取对方的 sdp,就可以通过局域网 IP 的方式进行对等连接。
公网连接:除本地连接外。想要实现P2P通信,必须让通信双方知道对方的公网IP。»
1、请问这里的sdp是什么意思?这个我猜测应该是一个类似IP地址的定位地址。
2、请问这里说的局域网,是指的A和B都在同一个局域网还是在不同的局域网?(局域网1 ~~~公网~~ ~ 局域网2 )
满脑子智慧溢出
有大佬知道,FC游戏源码在哪里下载嘛?
动手搜搜谷歌,这个网站就可以"https://www.downzz.com/zzyouxi/21174.html" (Fc)
满脑子智慧溢出
echarts绘制断开的点。或者叫。数据不连续?
"普罗米修斯的监控图" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250101/e3a077e53ffb9b804d884c2b8fc40b1b.png)
问题1:后端返回的点。就是不连续的(因为关机或原因,数据不是连续的)
我想要的结果和prometheus这个图一样。什么时间数据就断开了。什么时间数据生成的。一目了然
***
而我现在用echarts。生成的都是连续的。左右两边很远的点。。都是连在一起的。
//通过赋值。。这个图。很难看
const option = {
legend: {
left: 'left',
right: 0,
width: "auto", // 图例组件的宽度
height: "auto", // 图例组件的高度
itemHeight: 14,
itemWidth: 25,
itemGap: 5,
data: [],
selected: {
全选: true,
},
bottom: 0,
icon: 'rect',
y: 'top',
textStyle: {
color: "rgba(51, 51, 51, 1)",
lineHeight: 25,
}
},
grid: {
top: '10%',
right: '1%',
left: '2%',
bottom: '2%'
},
dataZoom: [
{
type: 'slider', // 滑动条型数据区域缩放组件
show: false,
start: 0,
end: 100,
}
],
xAxis: {
type: 'time',
axisLabel: {
formatter: function (value: any) {
var time = new Date(value);
return time.toLocaleTimeString('en-US', { hour12: false, hour: '2-digit', minute: '2-digit' });
},
// 设置刻度标签显示的间隔,这里设置为每 2 个刻度显示一个
interval: 5,
},
},
yAxis: {
type: 'value',
},
series: [
{
type: 'line',
name: '全选',
showSymbol: false,
data: [],
symbol: 'none',
animation: false
}
]
};
"有问题的图" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250101/f126de44a3810217fb7c622250bfb7d9.png)
满脑子智慧溢出
nginx 如何配置指向带有hash值的index.html文件?
现场景如下:
react 项目中打包生成的index.html 文件,包含有一个哈希值: index.as23fs.html 类似这种。
在nginx 中配置指向的时候,不知道如何指向index.**.html,
location / {
root html/demo;
index index.html index.html; // 想要使用方法指向index.as23fs.html
try_files $uri $uri/ /index.html;
}
请教各位老铁们了
满脑子智慧溢出
ant table的customRender函数如何返回vue标签?
const tag = ()=>h(Tag, { color: "blue" }, 'label')
function customRender({ value, column }, options) {
return tag();
}
这样?有点不太清楚你想干什么
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241226/b2291f872d610cfc98e8447197c8d6e7.png)
满脑子智慧溢出
vue 进行 props 类型检查用 instanceof 不会有问题吗?
不能说毫无风险。
但风险并不在于你说的这一点,你列举的这一类问题会在框架层面得到解决,不会把烂摊子留给开发者。亲手实现过深度拷贝的人大抵都知道必须先检测是否为
"RegExp"、"Array"、"Date" 等内置对象,确定不是这些对之后,才能按照 "Object" 来处理,框架的解决方案应该与此类似。
"incetanceof" 检测存在的可能风险在于 JS
写法过于灵活,以至于子类属性与超类的同名属性可以不兼容,"incetanceof"并不能检测出这种改动:
class TaniedArray extends Array{
forEach(){
return null
}
get map(){
return null
}
}
const taniedArray = new TaniedArray(1,2,3,4,5);
console.log(taniedArray incetanceof Array);
// true
taniedArray.map(i=>i); // 报错
«👆 这里子类的 "forEach" 与 "map" 与超类的同名方法不同("map"甚至已经不再是方法了),假如 Vue
试图调用"taniedArray.map",就会报错。
这种改动难以检测,即便使用 AI 推荐的 "Array.isArray" 方法来检测,依旧无法发现问题。»
对 JS 而言,这种问题是无解的,因为这种改动难以约束,也那一检测,因此避免这种问题,只能指望开发者自己不要乱来。
满脑子智慧溢出
给span标签内添加高度auto,但身在同一行相邻列,有一个单元格高度由于多内容撑开了,而另一个却不能一起撑开?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241220/a0ae389a7e7acb7d33a9e212eb1cd7e0.png)
html
上平行度
平行度OK/NG
css
.row {
border-bottom: solid .0625rem #9c9c9c;
display: flex;
align-items: center;
justify-content: center;
.col {
height: 100%;
display: flex;
span:not(:last-child){
border-right: solid .0625rem #9c9c9c;
}
::v-deep span {
flex: 1;
height: 100%;
word-break: break-all;
word-wrap: break-word;
// font-size: 8px;
height: 23px;
line-height: 23px;
}
.label{
background-color: #e0e0e0;
color: #000000;
font-weight: bold;
height:auto;
}
.value{
height: auto;
}
满脑子智慧溢出
toRef 的第二个参数的类型是 never?
(alias) toRef(object: {}, key: never): never (+2 overloads)
在编写代码时候发现 "toRef" 无法传入第二个参数,因为 "key" 类型被指定成了 "never"。
我在"vue"官网上没发现有这个定义。。不太确定哪里出现了问题。
满脑子智慧溢出
nginx 代理 location不同的前缀校验不同的文件格式,怎么配置?
server {
listen 9023;
server_name localhost;
# location ~* "\.(xlsx|png|doc|docx|pdf|xls|rar|zip|jpg|jpeg|bmp)$" {
# rewrite ^/.(xlsx|png|doc|docx|pdf|xls|rar|zip|jpg|jpeg|bmp)$ /$1 break;
# proxy_pass http://192.168.3.14:9090;
# }
}
我期望 以location test1 开始的请求验证后缀为png格式,test2开始的请求不验证格式,怎么配置这个location呢?
满脑子智慧溢出
正则表达式 $在这里是匹配啥?
https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241209/93b42eae1b513f67e075d0686403750c.png
测试是可以匹配这些,但是具体 $ 在这的用处没看懂!^!
***
"1" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241209/e72279cc657b3ae501683c244e068d74.png)
"2" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241209/cbb001626c3630ced3f4c803b4024000.png)
"3" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241209/ecd599e77add7f22c688c78f5b82b963.png)
"4" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241209/15a4fb489d9a0ac8e2e401a99e3a00a5.png)
"5" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241209/d3e41560acc7648425f036c40dcd36df.png)
***
请问有大佬知道不?
满脑子智慧溢出
有没有快速自动生成查询条件的数据查询框架?
PM给我们提了个需求,是快速做一个查询工具(web app)
预设几种查询的数据集(配好join之类的关联)
然后可以在前端页面上直接设置查询条件,导出结果表单
要求就是不花很多功夫(因为只是一个小工具),配好数据集之后就能用
可以自定义查询条件和输出的字段
因为数据量比较大,不能直接查出结果之后写filter过滤
想问下有没有这种简单好用的框架
满脑子智慧溢出
vue3对象里面的数组push数据,数据失去响应,应该如何使数据保持响应式呢?
const addData = ref({
recordName: "",
appointmentStartTime: "",
appointmentEndTime: "",
departurePlace: "",
arrivalPlace: "",
vehicleId: "",
vehicleNumber: "",
driverId: "",
nickName: "",
recordStatus: "",
reason: "",
taskRemark: "",
approachPointNum: "",
simultaneous: "",
approachPointList: [
{
startPoint: "",
endPoint: "",
approachStatus: "",
approachEndStatus: "",
delFlag: "",
approachStartComment: "",
approachEndComment: "",
approachStartTime: "",
approachEndTime: "",
rider: "",
approachReason: "",
approachCost: "",
approachDepartureMiles: "",
approachArrivalMiles: "",
approachPointOrder: "",
expenseLedgerList: [
{
expenseType: "",
expenseAmount: "",
picture: "",
},
],
clockList: [
{
appointmentPoint: "",
time: "",
point: "",
status: "",
},
{
appointmentPoint: null,
time: "",
point: "",
status: "",
},
],
},
],
});
往approachPointList里面加数据失去响应式
const addclick = () => {
addData.value.approachPointList.push({
startPoint: "",
endPoint: "",
approachStatus: "",
approachEndStatus: "",
delFlag: "",
approachStartComment: "",
approachEndComment: "",
approachStartTime: "",
approachEndTime: "",
rider: "",
approachReason: "",
approachCost: "",
approachDepartureMiles: "",
approachArrivalMiles: "",
approachPointOrder: "",
expenseLedgerList: [
{
expenseType: "",
expenseAmount: "",
picture: "",
},
],
clockList: [
{
appointmentPoint: "",
time: "",
point: "",
status: "",
},
{
appointmentPoint: "",
time: "",
point: "",
status: "",
},
],
});
满脑子智慧溢出
el-table 如何实现自动滚动,为什么0+1赋值后结果是0.6666666865348816?
step的赋值逻辑没看到
scrollTop取的是dom元素垂直方向滚动距离,
0 + 1没有误差,那只可能是 + 1的时候scrollTop不是0
对scrollTop取值可以做个取整操作
满脑子智慧溢出
MYSQL如何在某一列中存储多值类数据,如多个用户id?
错题表设置成关系表,存储用户ID和题库ID,这样就存储了用户和错题的关系,关联查询就可以得到用户的错题了
满脑子智慧溢出
怎么实现这种 Echarts 3D 饼图?
前端大佬们求助,这种图怎么弄出来啊
求教求教
![Echarts 3D饼图]
https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241111/49d96d5d794b0cf5cd3ad3be350688b4.png
在经历各种 百度 Google Ecahrts社区 及 各大博客 都没搞出来
满脑子智慧溢出
微信SDK在Vue3+TS项目中使用问题?
在引入了js后,可直接在页面使用window.wx。
if ('wx' in window) {
console.log(window.wx)
}
可以在页面中直接打印这个试试。
满脑子智慧溢出
Tomcat配置没问题,但是启动失败?
Tomcat环境变量配置正确、端口没有被占用,文件也没有错误,还是无法解决,实在是不知道怎么办还有什么原因导致双击statup.bat后一闪而过,会退出,从而导致无法去访问网页?
满脑子智慧溢出
怎么强制用户刷新页面?
怎么强制用户刷新页面?
今天遇到一个问题,是一个公众号上面的项目,修改了一个问题,但是需要用户刷新才能看到效果?用什么技术可以实现?无论是小程序,公众号还是h5,只要我上传了修改过的代码,就可以让用户直接看到效果,不管用户是否强制刷新?
无论是小程序,公众号还是h5,只要我上传了修改过的代码,就可以让用户直接看到效果,不管用户是否强制刷新?
满脑子智慧溢出
能不能用 Java 实现把 Excel 文件转化为 PDF?
能不能用 Java 实现把 Excel 文件转化为 PDF
我有一个excel文件,希望在后台用java转成一个pdf文件,要求信息不能丢失。
满脑子智慧溢出
vue, 计算属性如何赋值?
你是否是要这样:
计算属性
修改计算属性
今年:{{age}}岁了
明年:{{nextAge}}岁了
import {ref,computed} from 'vue'
excort default {
name:"App",
setup(){
const age=ref(18)
const nextAge=computed({
get(){
// 读取计算属性的值,调用get方法
return age.value+1
},
set(v){
// 修改计算属性的值,调用set方法
age.value=v-1
}
})
retuen { age , nextAge}
}
满脑子智慧溢出
Dockerfile 安装 Redis 和 MongoDB 常见问题?
dockerfile 安装不上redis mongdb
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241030/bfc7f7ab1154357960a1b86496c37708.png)
我试过换镜像源但是还是一样的错误
满脑子智慧溢出
像h5或小程序上的关于“医院导航”的系统都用到了哪些技术?有做过的吗?
像h5或小程序上的关于“医院导航”的系统都用到了哪些技术?有做过的吗?
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241030/6662fde0f6918d9b94780995c6bd326e.png)
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241030/9a0647c970a6111092fd15f0e3085d9e.png)
上面的应该用到了不同的技术,有没有比较简单点的,好实现的。
满脑子智慧溢出
为什么controller接受不到请求?
你为这个接口指定的http请求方法是POST,从浏览器直接访问时默认的请求方法是GET,所以这个请求不能分发到对应的接口。可以使用@GetMapping或修改method=RequestMethod.GET
如果想保持方法为POST,你可以使用httpclient工具如Postman、ApiFox等等发送http请求,发送时可以指定方法为POST。
满脑子智慧溢出
sass 里 mixin 是什么?
首先要知道,断句,mix,in 是这么断的吗?
别老继承了,一帮无聊的人搞了一个 设计模式 就提到,include 怎么也成了继承了,
组合优于继承
我记得 mixin 这个英文单词,我是从 ruby 中看到的
多学学!
用 sass (这东西好像也是 ruby 写的)
lass,less?忘了!
学点新的,不如学点老的,比如 操作系统,编译原理
jquery 值得学
满脑子智慧溢出
【挑战】如何通过CSS实现多行文本两端对齐的下划线?
【挑战】如何通过CSS实现多行文本两端对齐的下划线。
要求:
1、文字行数是可变的。
2、下划线颜色和与文字的间距可调。
如图所示。https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/59467a4a38e6f5943ce8060752c98149.png
text-decoration border background-image都可以尝试。
满脑子智慧溢出
如何根据href的路径判断最终的url网址?
有一个网页
https://www.dataroma.com/m/holdings.php?m=BRK
里面有这样的表述
≡
请问,这个链接的最终指向为何是
https://www.dataroma.com/m/hist/hist.php?f=BRK&s=AAPL
满脑子智慧溢出
如何解决Vue和Spring Boot项目前端运行问题?
"微信截图_20240121190812.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241013/b42e3a4aacaaee5e2a534d1e73171cb7.png)"微信截图_20240121190854.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241013/2e7b6ee6f8ff3cdb6313c9a3deb7df59.png)这是怎末回事,这是vue和springboot项目,前端我一直运行不出来
不知道怎末运行起来,求帮助
满脑子智慧溢出
如何在断网状态下播放缓存的音频?
setaudioBlob(dataurl, name) {
fetch(dataurl)
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.blob();
})
.then(blob => {
let reader = new FileReader();
reader.onloadend = function () {
let base64data = reader.result; // 这里得到的是一个"data:*/*;base64,..."格式的字符串
// 存储到localStorage
localStorage.setItem(name, base64data);
};
reader.readAsDataURL(blob);
})
.catch(error => {
console.error('Error', error);
});
},
getaudioBlob(name) {
let base64data = window.localStorage.getItem(name)
// 分离出MIME类型和实际的Base64内容
let dataParts = base64data.split(';base64,');
let contentType = dataParts[0].split(':')[1];
let base64String = dataParts[1];
// 将Base64字符串转换回Blob
let decodedData = window.atob(base64String);
let arrayBuffer = new ArrayBuffer(decodedData.length);
let uint8Array = new Uint8Array(arrayBuffer);
for (let i = 0; i console.error(error));
},,我是mp3文件,我理解是只要浏览器能正常播放wav,转化播放应该没啥问题
断网播放声音?
在网络连接的时候加载audio,然后在断网的时候播放音频,希望他走缓存,就很奇怪,有时候可以走缓存,有时候不行,请求接口,但是是脱机状态就请求失败,怎么设定缓存永久,一直走缓存,不重新请求接口"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/3edadf5bce3257024e6e7424060e1def.png)
他会走个这个,启动器也看不到
满脑子智慧溢出
threejs如何获取一个几何体其中一个面的形状?
threejs如何获取一个几何体其中一个面的形状?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241010/0bd26e85ff02209f9bf51c91d839c611.png)
const waterGeometry = this.scene.getObjectByName('小河');
let position = waterGeometry.geometry.attributes.position;
//拿到顶点坐标,然后创建曲线
满脑子智慧溢出
请教一个好用的js库,主要使用于线段的长度计算,判断线段的方向等?
Victor.js 是一个 JavaScript 的 2D 矢量数学图表库,包含一些常见的矢量操作方法,支持浏览器和 Node.js。
"图片" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241008/108e86a7122f06466a2aaedddf260742.png)
npm install victor --save
var Victor = require('victor');
var vec = new Victor(42, 1337);
项目主页:"http://www.open-open.com/lib/view/home/1409447461822" (https://link.segmentfault.com/?enc=VTmhZqZABfZZ1R4uxR1OpQ%3D%3D.29ZPFMlc8nrj8%2F8y3zwTkma4vZ8HPaIDGP%2FR35p%2BN6HBSwdItcwsKBtD3F0PFMVq4kedx31E4Kg%2BepjJ5yqt9g%3D%3D)
满脑子智慧溢出
为什么C语言中union成员初始化及构造函数使用报错?
为联合类型 "union message_t::result_t" 添加默认构造函数:
typedef struct message_t
{
union result_t
{
int aaa;
Stu stu;
result_t() {}
} result;
} message;
满脑子智慧溢出
为什么TCP/IP 总是绑定在一起说呢?
个人背景 :网络小白,最近在看《自顶向下网络基础》这本书。
在 OSI 模型中,我了解到 TCP 是属于传输层的,而 IP 是属于网络层的。但是在各种教材或者文章中,总是将 TCP/IP 绑定起来说是
TCP/IP 协议簇 ,
问题一: 为什么明明不属于一个传输层的,而要将这两个绑定连在一起说呢?
问题二: 为什么不是 UDP/IP 呢?
满脑子智慧溢出
Vue3中v-for循环遍历引入的组件为何未能加载?
在vue3中,使用v-for循环遍历的方式无法加载组件
import OneCom from "./one-com";
import {ref} fromm vue;
const comList = ref([{id: 1,comName:"OneCom "}])
如果不通过遍历能正常加载出组件
import OneCom from "./one-com";
import {ref} fromm vue;
const comList = ref([{id: 1,comName:"OneCom "}])
满脑子智慧溢出
微信云函数--如何使用上下文?
微信云函数开发中确实存在上下文(context)的概念。上下文是一种环境信息的集合,它能够在云函数的执行过程中提供有关调用环境的信息。在微信云函数中,上下文可以用来获取调用者的相关信息,例如用户的openid、小程序的appid等。
根据搜索结果中提供的信息,微信云函数中的Cloud.getWXContext()方法可以用来获取微信调用上下文。这个方法返回一个包含多个属性的对象,例如OPENID、APPID、UNIONID、ENV和SOURCE。这些属性提供了调用云函数时的上下文信息,例如调用来源(SOURCE)和环境ID(ENV)。
在你的web系统中,如果你已经完成了登录授权并成功调用了云函数,你应该能够在云函数中通过Cloud.getWXContext()获取到用户的openid。这个openid是微信用户的唯一标识,你可以使用它来关联用户信息并进行状态管理。
如果你在尝试获取上下文信息时遇到问题,可能是因为以下原因:
调用云函数的方式不正确:确保你的web系统在调用云函数时已经正确地进行了登录授权,并且使用了微信提供的SDK或者API。
云函数的编写问题:检查你的云函数代码,确保你没有在exports.main外部调用getWXContext,因为在函数执行环境未建立时调用getWXContext是无法获取到上下文信息的。
权限问题:确认你的云函数有足够的权限来访问用户信息。在某些情况下,可能需要用户明确授权或者满足特定的条件才能获取到unionid。
环境配置问题:如果你在本地调试云函数,确保你的环境配置正确,ENV应该设置为local,SOURCE应该设置为wx_client。
满脑子智慧溢出
如何避免AMH环境安装PHP扩展导致服务器卡死?
具体是安装哪个扩展,是fileinfo吗,反馈比较多的是fileinfo安装内存用满的比较多,
大多扩展安装过程用的服务器资源都较小的,
或是在系统进程看当前占用较多有哪些其它进程,先停止,再安装软件,或是升级服务器硬件。
如果是内存,也可以面板桌面调整swap虚拟内存。
满脑子智慧溢出
el-cascader点了第二次的值替换第一次的值,第三次替换上一次的值,以此类推?
handleChangeareaCity(val) {
let newitems = this.$refs['cascaderAddrs'].getCheckedNodes()[0].pathLabels
const newInputValue = newitems[0]
this.ruleForm.address = this.ruleForm.address + newInputValue
},
newitems[0]是直接拿到了区县的值了,现在是点击了区县追加给给this.ruleForm.address,现在点了第一个是正常的,第二次点击会追加、第三次也是点也是会追加,这不是我想要的效果
想要的效果是 点了第一次的值,赋给this.ruleForm.address,点了第二次就把第一次的值替换,第三次替换上一次的值,大佬们这个 要怎么弄呢?
满脑子智慧溢出
有设计elementPlus主题的网站吗?elementui之前有,现在好像没有了?
你说的时这个嘛? "element-plus/theme-chalk-preview: Preview and download custom
Element Plus theme-chalk." (https://link.segmentfault.com/?enc=j3UTattqz5TIu1WqRhSuhQ%3D%3D.0qmmLBORSzIV1%2BVaV2cdEORMjT2U%2FjqiAWhAS1eRjZWz3ELef7kn40Jf3Ut6mrBqrrx1jBBQX%2F5dLflg6hxqiQ%3D%3D)
还有一个生成颜色的工具类库 "element-plus/colors: 🎨 This repository is meant for build color
utils for theme
customization" (https://link.segmentfault.com/?enc=p5yFqUkK%2FTSy8C4A5A4QLQ%3D%3D.wnUPMYb4tCKs3iJYORDl7gGOjwNtblDED1WVh%2Ft2kkeWRBQW5T6UXoSztLabwlo1)
满脑子智慧溢出
TypeScript 中未声明属性错误提示不一致?
如下代码:
interface IPerson {
name: string;
others: { hobby: string };
}
function testFn(type: IPerson) {
console.log("🚀 ~ testFn ~ type:", type);
}
testFn({ name: "123", age: 18, others: { hobby: "跑步", name1: "124" } });
const p1 = { name: "123", age: 18, others: { hobby: "跑步", name1: "124" } };
testFn(p1);
在 vs code 中,有一个报错提示:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/03d2c9f5eeccf45f75454a83026a60e6.png)
我有2个疑问:
1. 为什么 age、name1 都没有在 IPerson 中声明,但只提示了 name1 没有声明的错误,没有 age 的错误提示?
2. 把字面量形式的对象赋值给 p1 变量,然后传给 testFn,为啥此时没有任何错误提示了呢?
尝试将这段代码放在多个地方,排除了 tsconfig.json 配置的原因。
满脑子智慧溢出
vite打包模板字符串如何压缩为一行?
模版字符串,你自己不压缩,谁敢主动替你压缩?打包工具无法确认你的换行和空格的作用,自然不会做任何处理。如果你需要压缩,就自己写个脚本或者插件处理吧。
满脑子智慧溢出
vue3 + vite 动态加载?
初始:
const lazyLoad = (url: string) => import(`./${url}.vue`);
可以使用,但 vite 有警告:
09:45:57 [vite] warning: invalid import "./${url}.vue". Variable imports cannot import their own directory, place imports in a separate directory or make the import filename more specific. For example: import(`./foo/${bar}.js`).
Plugin: vite:dynamic-import-vars
File: D:/NHANH/WJT/project/intelligence-chart/src/components/configItem/config/main.ts
09:45:57 [vite] warning:
D:/NHANH/WJT/project/intelligence-chart/src/components/configItem/config/main.ts
1 | import { Eye } from "@vicons/ionicons5";
2 | const lazyLoad = (url) => import(`./${url}.vue`);
| ^^^^^^^^^^^^^^
3 | const Config = {
4 | echarts: {
The above dynamic import cannot be analyzed by Vite.
See https://github.com/rollup/plugins/tree/master/packages/dynamic-import-vars#limitations for supported dynamic import formats. If this is intended to be left as-is, you can use the /* @vite-ignore */ comment inside the import() call to suppress this warning.
移动文件并改为:
const lazyLoad = (url: string) => import(`./config/${url}.vue`);
vite 没有警告了,但浏览器控制台报错:
Uncaught (in promise) Error: Unknown variable dynamic import: ./config/echarts/line/data.vue
或是 不移动 文件改为:
const lazyLoad = (url: string) => import(`../config/${url}.vue`);
都不行,这是为什么?
如何处理?
满脑子智慧溢出
Element Plus 提供的国际化(i18n)功能,如何翻译el-pagination中文字?
"图片.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241001/658e56f1c7b49c5411ef5e2fa152b367.png)
el-pagination组件的文字怎么翻译
满脑子智慧溢出
typescript中"对象解构"时"属性重命名"的一个不解的问题?
let o = { a: "foo", b: 12, c: "bar"}
下面这句我能理解:
let {a: newName1, b: newName2} = o;
但下面这个怎么理解?冒句后面的{a: string, b: number} 是{a,b}中a和b的类型吗?而且我查看a,b的值是undefined ,为什么?
let {a, b}: {a: string, b: number} = o;
满脑子智慧溢出
pnpm 如何打包项目的 node_modules?
pnpm下 如何打包项目的 node_modules?
我想要把node_modules 压缩并转移,结果提示不少依赖找不到指定的路径是为啥.
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241001/56a822c8451bfe2920ea70292753afb6.png)
满脑子智慧溢出
正经的通过程序从电脑控制手机的方案,除了 adb 还有什么?
远程桌面不可以吗?
满脑子智慧溢出
chrome 检视元素的时候,图片中的阴影 和箭头表示什么含义?
阴影: flex-basis 宽度
箭头: 实际容器被内容撑到了箭头所指向的宽度
满脑子智慧溢出
父组件动态向子组件传本地图片,子组件要如何正确加载传值的图片?
1. 直接使用传递下来的URL地址显示,需要确保URL地址正确。
2. 父级这边 "require" 之后处理成 "base64" 的形式去 "prop"。
一般来说静态资源,并且你不需要做处理的话,直接放到 "public" 这种静态资源目录就可以,并不需要放到 "src/assets"
目录下。除非说你想要把这些资源在 "webpack/vite" 当中做小图转 "base64" 处理之类。
满脑子智慧溢出
如何在PyTorch中实现模型参数的动态缩放并对缩放系数计算梯度?
我希望将模型A的参数乘以一个标量lambda得到模型B(即模型B的架构和模型A的一样但每个参数都是模型A的lambda倍),现在我希望将一个tensor输入模型B,并对输出进行反向传播,然后优化参数lambda。但梯度无法反传到lambda上。具体代码如下
import torch
import torch.nn as nn
class MyBaseModel(nn.Module):
def __init__(self):
super(MyBaseModel, self).__init__()
self.linear1 = nn.Linear(3, 8)
self.act1 = nn.ReLU()
self.linear2 = nn.Linear(8, 4)
self.act2 = nn.Sigmoid()
self.linear3 = nn.Linear(4, 5)
def forward(self, x):
return self.linear3(self.act2(self.linear2(self.act1(self.linear1(x)))))
class WeightedSumModel(nn.Module):
def __init__(self):
super(WeightedSumModel, self).__init__()
self.lambda_ = nn.Parameter(torch.tensor(2.0))
self.a = MyBaseModel()
self.b = MyBaseModel()
def forward(self, x):
for para_b, para_a in zip(self.a.parameters(), self.b.parameters()):
para_b.data = para_a.data * self.lambda_
return self.b(x).sum()
input_tensor = torch.ones((2, 3))
weighted_sum_model = WeightedSumModel()
output_tensor = weighted_sum_model(input_tensor)
output_tensor.backward()
print(weighted_sum_model.lambda_.grad)
输出为None,现在我希望有代码能实现相同的功能并能成功计算lambda的梯度。
用tensorboard可视化计算图发现weighted_sum_model的参数中只有b出现在了计算图上,a和lambda_都没有出现在计算图中。
满脑子智慧溢出
非开源代码获取许可后如何使用?
github上有些插件是分为个人版和企业版的,企业版本的说是需要获取许可证,才能用。但是仍然可以直接下载下来,直接使用。
比如这个:AG-grid插件分为社区版和企业版 ,但是企业版本的代码也可以下载。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20240929/6b5ea3336ef1dc677473df9ca6b2bed9.png)
我的问题:
1.关于此类需要授权的代码,获取官方的许可后,是要怎么使用他的代码?在哪里注明?
2.如果直接使用它的代码用在公司的内部系统,被发现会怎么样?