UX_siri
vue2函数式组件怎么添加默认class?
renderComponent: {
// 自定义内容
functional: true,
render: (h, context) => {
const render = context.props.render
const params = context.props.params
return render(h, params)
},
props: {
render: {
type: Function,
required: true
},
params: {
type: Object,
required: true
}
}
},
这里定义了一个函数式组件,怎么在使用它的时候,添加一个默认的class='text'?如下:
UX_siri
词云图中如何自定义词语的字体大小?
解决方案 Solution
在VChart图表库中,你可以设置"wordCloudChart.fontSizeRange"来配置字体大小范围,它表示数据最小值和最大值分别对应的文字大小,在你给出的例子中,可以配置"wordCloudChart.fontSizeRange: [5, 40]"来达到预期效果。
代码示例 Code Example
代码参考 Code Example
const response = await fetch('https://lf9-dp-fe-cms-tos.byteorg.com/obj/bit-cloud/data-wordcloud.json');
const dataWordCloud = await response.json();
const spec = {
type: 'wordCloud',
nameField: 'challenge_name',
valueField: 'sum_count',
seriesField: 'challenge_name',
data: {
name: 'baseData',
values: dataWordCloud
},
fontSizeRange: [5, 40],
};
结果展示 Results
在线效果参考:"https://codesandbox.io/s/wordcloud-chart-fontsizerange-znkv37" (https://link.segmentfault.com/?enc=N9RnsE59GFkK8DRwOO21Rw%3D%3D.jeJQIJlojzsHPJxaDV%2BlA0ftqJc4sOaQB3BkirLdw76yEoKchYOfOk5OkGfkAk4c30CVS3fXdq6S1int0KqZPw%3D%3D)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250106/a7a637ed975dafcc911d4e84f1189a26.png)
相关文档 Related Documentation
词云demo:"https://www.visactor.io/vchart/demo/word-cloud-chart/word-clo..." (https://link.segmentfault.com/?enc=J9M9QcoK8K6xZkf4mnUNZg%3D%3D.mpbAMSnwQZskpf6bBtUtyF%2FBVNd5kvxYUqd9n7JkIbpgicNybSlZaQwxQa5FwYgsEQyiFvALhak%2BMu%2FLpeRnT%2FN0qqijYnAIoCpImiAV0lQ%3D)
词云教程:"https://www.visactor.io/vchart/guide/chart/word-cloud" (https://link.segmentfault.com/?enc=Zqpqnrd76On2QX0GjwspKQ%3D%3D.p8EV6dTFHX94kAb5aVigRdPGK34KS%2Fqsn8w4GSYU47s5ILaDnh2GAwCK1%2FKN22fSZXJyOCg0VpbOwSFmLga1uQ%3D%3D)
相关api:"https://www.visactor.io/vchart/option/wordCloudChart#fontSize..." (https://link.segmentfault.com/?enc=JVF2XbJih7%2FRyW1XQvqW0A%3D%3D.PrLAQ63tSRE6IY9gJ8UeHyI8CxyEAbiXAf2wZLsWWzJf7qGthjNfRCeRnPan5gcBnoJuwQC41PfOBZKUrSehgnQFoL%2F%2FAL7ShdNvEYRdtP4%3D)
github:"https://github.com/VisActor/VChart" (https://link.segmentfault.com/?enc=137DVQS1ZejTgbzDaCz8EA%3D%3D.lIGhPSdpnp1stoESKur6hwNqJzIQLxccMJiKpcXMr%2BoK0pePmVpZgPXotmCoH5tF)
UX_siri
怎么使用redis缓存websocket实例?
将WebSocket实例存储在Redis中是一个不错的解决方案,以防止内存泄漏并支持水平扩展。但是,WebSocket实例不能直接存储在Redis中,因为Redis只支持存储字符串、数字和二进制数据,而WebSocket实例是一个复杂的JavaScript对象。为了在Redis中缓存WebSocket实例,你可以考虑以下方法:
使用WebSocket连接标识符:将WebSocket连接的唯一标识符(例如连接ID或用户名)作为键,将WebSocket实例的序列化版本作为值存储在Redis中。你可以使用JSON.stringify将WebSocket实例序列化为字符串,然后在需要使用它时,从Redis中获取并反序列化为WebSocket实例。
示例代码:
javascript
Copy code
const redis = require('redis');
const client = redis.createClient();
wss.on('connection', function (ws) {
// 假设每个WebSocket连接有一个唯一的连接ID
const connectionId = generateConnectionId();
// 存储WebSocket实例到Redis
client.set(connectionId, JSON.stringify(ws));
ws.on('close', function () {
// 在连接关闭时,从Redis中删除WebSocket实例
client.del(connectionId);
});
});
// 在需要使用WebSocket实例时,从Redis中获取并反序列化
function getWebSocketInstance(connectionId) {
return new Promise((resolve, reject) => {
client.get(connectionId, (err, serializedWs) => {
if (err) {
reject(err);
} else if (!serializedWs) {
resolve(null); // 没有找到WebSocket实例
} else {
const ws = JSON.parse(serializedWs);
resolve(ws);
}
});
});
}
请注意,这里使用了一个唯一的连接ID作为键来存储WebSocket实例。你需要确保在连接关闭时从Redis中删除WebSocket实例,以避免不再使用的实例占用Redis空间。
使用WebSocket连接池:你可以创建一个WebSocket连接池,将WebSocket实例存储在池中,并使用连接标识符来检索和重用WebSocket实例。这种方法可以更精细地控制WebSocket实例的生命周期,以减少内存泄漏的风险。
你可以使用现有的连接池库来管理WebSocket实例。
不管你选择哪种方法,都需要确保在WebSocket连接关闭时从缓存中删除实例,以防止资源泄漏。此外,你还需要考虑定期清理不再使用的WebSocket实例,以释放Redis中的资源。
UX_siri
如何从一级路由访问二级路由上的设备?
可以看看某乎的回答:"一级路由下的设备怎么访问二级路由下的设备?" (https://link.segmentfault.com/?enc=vq1LFqAQQDLfIm64xweX1Q%3D%3D.%2FgEi4BvrPfFeWWjdcP3kDcs%2BuDM9bVnHYFKPcrmAA0yD98kOg4Fo4tGHM82RWYg6)
"二级路由怎么设置,才能让两个路由下的设备互相访问?" (https://link.segmentfault.com/?enc=EP3XqdL9xAs4WVDVwrzlmg%3D%3D.Zpb11gm7aH5CzmMEw6EkXZIbGcvS%2B%2FBfMBJVOZLnPDeYcM%2Be4zO606NazpUGs29l)
UX_siri
linux安装autoreconf报错,错误信息见下图,哪位同僚有过类似经验,欢迎评论?
https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241230/9bfaba6149783073d1dc67d154b76ffe.png
UX_siri
求助一个PHP加密解密 不区分大小写 的函数?
PHP语言:
比如字符串
$s = '2_中文';
加密后得到的加密字符串,必须全部是小写, 不能有特殊符号。
主要是用于做 二级域名。
比如:xxx.abc.com
其中 xxx 就是 $s 加密后的字符串。
程序里面获取 HTTP_HOST,得到 xxx,
然后解密并得到 $s。
下面这段是我在网上找的,不知道有没什么bug。
function encode32($str) {
$BASE32_ALPHABET = 'abcdefghijklmnopqrstuvwxyz234567';
$output = '';
$v = 0;
$vbits = 0;
for ($i = 0, $j = strlen($str); $i = 5) {
$vbits -= 5;
$output .= $BASE32_ALPHABET[$v >> $vbits];
$v &= ((1 0) {
$v = 'a' && $str[$i] = '2' && $str[$i] = 8){
$vbits -= 8;
$output .= chr($v >> $vbits);
$v &= ((1 << $vbits) - 1);
}
}
return $output;
}
$s = '2_中文';
$jiami = encode32($s);
$jiemi = decode32($jiami);
echo '原始:'.$s.'---加密后:'.$jiami.'===解密后:'.$jiemi;
UX_siri
zustand的store的方法,为何第二次点击报错:Unhandled Runtime Error TypeError: addTab is not a function?
我有如下的zustand的store:
// tabs.store.ts
interface TabsSlice {
tabs: [],
addTab: (tab: TabsWithBreadcrumbs[number]) => {},
removeTab: (key: string) => {},
}
export const createTabsSlice = (set:any, get:any): TabsSlice => ({
tabs: [
{ title: '简介', breadcrumbs: ['简介'], key: '000' },
],
addTab: (tab) => {
console.log('mmkk2: ', tab)
return set((state) => {
const newTabs = state.tabs.push(tab)
return newTabs
})
},
removeTab: (key: string) => {
return set((state) => {
const newTabs = state.tabs.filter(tab => tab.key !== key)
return newTabs
})
}
})
使用时候:
const { tabs, addTab, removeTab } = useStore();
...
{
const tab = {
...
}
addTab(tab) // 点击的时候,第一次可以,但是第二次就报错
}
在点击span的时候,第一次都是正常的,第二次就报错:
Unhandled Runtime Error
TypeError: addTab is not a function
请问这个是怎么回事呢,第一次点击的时候都是可以正常点击的,为何第二次就报错?
UX_siri
这种左边、上边、下边都有数据的echarts图表要怎么做呢,我查了下包括配置那块不知道怎么处理,有知道的吗?
看这个"demo" (https://link.segmentfault.com/?enc=qDC46b3KiZ1cZ8zbuNKI9g%3D%3D.edZkijNwdtOaZeHlYpVniVfwJxOH8XjMf14rS5i8sReQkZOr7hC0TOuCjQCybHX4fwWxzSV8wQKc06EDF7rH0g%3D%3D)
UX_siri
父元素设置mousedown之后子元素的dragstart事件就不触发了?
{{ item.name }}
给table-main添加mousedown这些鼠标事件之后,拖拽子元素table-item,他的dragstart就不触发了,直接触发父元素的mousedown事件,但是我明明给子元素添加了.stop阻止向上冒泡,问什么还是会直接触发table-main的mousedown呢?
UX_siri
对文件或者目录的元数据的管理是怎么做到的?
我们知道PC端有很多程序,比如对照片的管理软件,那么每个照片有自定的一些元数据,比如tag,自定义的描述信息。
请问这些是如何保留的呢?
如果是目录,那么可以在目录内有 ".meta/xxx" 的隐藏的目录信息进行保留元数据。
类似:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241219/0b3b7662e6fff6a83bf50442da6da23b.png)
但是如果是文件呢?如何做到保留呢?
UX_siri
写了一个查询功能,但是每当匹配出符合条件的数组项后,在匹配其他条件原来的数据数组就会变成上一次匹配出的数组?
期望每次都使用数据源过滤产生新的数据然后赋值给表格数据。
关键就在于这句,将过滤后的结果赋值给数据源了,数据源和表格数据糅合在一起了。
this.tableData = this.tableData.filter(data => data.bar_no.toLowerCase().includes(this.formInline.sn.toLowerCase()))
解决方案:
created(){
// 从服务端获取数据
this.originData = xxx
}
// ...
this.tableData = this.originData.filter(data => data.bar_no.toLowerCase().includes(this.formInline.sn.toLowerCase()))
这种查询类的筛选最好还是服务端做,数据量小可以前端做,一般是服务端返回不满足前端数据格式的时候前端对数据加工处理。
UX_siri
为什么使用链接法解决冲突中删除元素的时间复杂度可以是O(1)?
在算法导论《第3版》11.2节中表述如果采用的是双向链表结构,那么可以在O(1)的时间复杂度内删除指定元素。书中的解释和分析并没有一阵见血地指出是为啥。
因为在我看来只要是链表结构,无论是双向链表还是单向链表都需要有一个查找过程,所以删除的时间复杂度应该是O(n)才对,为什么书中说它是O(1)?应该怎么理解?
UX_siri
关于react函数组件传children的疑问?
用的TypeScript。
我定义了一个函数组件:"MyView":
type Props = {
children?: React.ReactNode;
};
function MyView(props: Props) {
const { children } = props;
return {children};
}
可以正常使用:
{sss}
为了看起简洁点,我将 "MyView" 稍微修改了一下:
function MyView(children?: React.ReactNode) {
return {children};
}
这个时候调用的地方就报错了:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241212/a88f5449b6053a2f49b0b52e085121fc.png)
报错信息:
«Type '{ children: Element; }' is not assignable to type 'IntrinsicAttributes
& ReactNode'.
Type '{ children: Element; }' is missing the following properties from type
'ReactPortal': key, type, props»
我懵逼了,这两种写法难道不是一样的吗?怎么就报错了?前端萌新理解不了,希望有经验的大佬可以指点一下。
UX_siri
php 上传csv文件导入sql,及导出csv文件并下载的问题?
有没有demo?
UX_siri
请问我这个计算属性为什么没有触发?
"8020e65370e94614ae2cdb807b03807.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241209/ebff833f4a701ea59a9cc7b029822653.png)
监听可以正常触发,而计算属性无法触发
UX_siri
Python 异步编程的问题 Asyncio ?
我发现 "await" 并没有用 "update_product_loop" 还是立刻就执行力,那 "await" 和 "async"
的到底是什么含义,以及我要怎么才能做到真正的等 异步任务 "a" 完成再去其它呢,就是说 "a" 里有很多子任务是异步的
async def main():
for page in JDServer.api("api/product/getPageNum"):
if products_insert_on:
await recursion_products_init(page["page_num"])
update_product_loop()
if category_insert_on:
recursion_sync_category(page["page_num"])
async with asyncio.TaskGroup() as tg:
tg.create_task(update_product_category())
tg.create_task(update_products_price())
asyncio.run(main())
UX_siri
大家对于微信封禁小程序和 h5 链接是如何预防和处理的?
大概率是"活动文案"的问题, "活动文案"举报的可能不大, 遇到过就给位数的访问都被封的
这样会封的:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241203/a1b7f93e2a1e269cfdcc568530e428fa.png)
具体规则依次对照吧:
«"http://weixin.qq.com/cgi-> bin/readtemplate?t=weixin_external_l..." (https://link.segmentfault.com/?enc=56ckWvlOLzXKlqDKouQc%2Bg%3D%3D.AZ91eKDgffuUPZ9JUl5ySn3Bz6JqHk6HMyvhyfADDThKC9VbuaiVTbMGwl8Wb3DphNrYByPtBz%2BigUMhckgsEmj0FLk70xl9pr7c8rqBkUgqat1olF8jOye9gOYGQQnbmM5tz7AfcDN7uudlzD6HeA%3D%3D)»
UX_siri
动态渲染一个表格,现在需要将其中三列的数据变成链接形式,点击可以跳转到另一个页面?
使用插槽
加个字段是否可跳转 插槽中做判断
UX_siri
像12306那样的扫码支付,应该看哪个文档,支付宝支付文档太多了,PC网站接入扫码支付?
web端的支付形式有哪些?推荐哪种?
UX_siri
如何从外网访问家中openWrt的管理页面?
我家中做了个 all in one 的小主机,安装了 esxi8.0系统,其中安装了 openWrt,win7,centos
之前是电信送的猫做路由器,我现在联系了电信更改了模式,在 openWrt
中拨号上网,看下图已经拨号成功,并且家中电视机已经可以正常看在线视频了。同时我修改了 openWrt 的管理页面的访问端口为7070,不过我在家中局域网访问
openWrt 仍然可以通过
"http://192.168.66.1" (https://link.segmentfault.com/?enc=dMoGhJWBUSiE%2FOVMl%2FYB0A%3D%3D.SkVfii19XSmklOy1C1dnbEwgR83lg1ei5MATzmuQeB4%3D)
这样不带端口号就可以访问成功,同时我从外网访问家中的 openWrt :
http://我家中openWrt拨号的外网IP地址:7070
倒是访问不通,请问我还要设置哪里可以从外网访问 openWrt?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241128/7e3ff24a4fbdc49b28af6a08046072ca.png)
UX_siri
多账号数据库表如何设计?
感觉 直接去掉 "account" 表,相关字段 放回 "user" 表就解决问题了
1 邮箱、手机号、工号 等都在 "user" 表里了
2 密码只有一个在 "user" 表里
3 查询用户信息的时候不跨表
4 没有 "employee" 信息的就是临时用户
登录的时候根据用户表单输入或者选择的类型,直接从 "account" 里查找也没啥问题
UX_siri
急急急,win11远程登录centos提示Permission denied, please try again.请问各位大佬如何解决?
加上"-v"参数,看看是哪一步验证最终fail了,然后看下服务器的auth log: "/var/log/secure" 看下是为什么失败了
UX_siri
docker 拉取最新版本,发现并不是最新的?
docker pull 这个命令 我当时想的是拉取最新版本的镜像
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241119/604530da3148f9d4aef5e24a43fe2f2d.png)
结果发现tag是latest 但是版本不是最新的 dockerhub库中有最新的 这是不是说明我的docker拉取的仓库不对啊 怎么修改 或配置
我配置了阿里加速
下面是配置的阿里的
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241119/461ed0988e3abd10fa0fba2cc21de5cc.png)
UX_siri
el-upload与van-uploader上传二进制数据的区别?
文件选择拿到的file数据本身就是二进制的啊,不需要做任何处理,我看你上面"file.content.splist"意思是你file.content是个base64Url?你从选择文件的回调到file.content中间做了base64处理还是什么操作
UX_siri
如何使用crypto-js进行AES解密,没有iv密钥偏移量?
AES解密,没有iv怎么使用crypto-js呢
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241112/d9acd6fd66fa426bad9dad50c6dcd0b3.png)
var CryptoJS = require("crypto-js");
// 定义AES加密解密密钥
const key = CryptoJS.enc.Utf8.parse('1234567_cpzy1234');
// 加密
const plaintext = 'admin';
const ciphertext = CryptoJS.AES.encrypt(plaintext, key, {
iv: CryptoJS.enc.Utf8.parse('1234567_cpzy1234'), // 初始向量
mode: CryptoJS.mode.CBC, // 模式
padding: CryptoJS.pad.Pkcs7 // 填充
}).toString();
console.log('加密',ciphertext);
// 解密
const decrypted = CryptoJS.AES.decrypt(ciphertext, key, {
iv: CryptoJS.enc.Utf8.parse('1234567_cpzy1234'), // 初始向量
mode: CryptoJS.mode.CBC, // 模式
padding: CryptoJS.pad.Pkcs7 // 填充
});
console.log('解密',decrypted.toString(CryptoJS.enc.Utf8));
加密串:'z6OGLxa/UGEjSZXfBiPGsA=='
秘钥:'1234567_cpzy1234'
找了一个在线解密的"网站" (https://link.segmentfault.com/?enc=KyT4%2B3Fh8gLzsVlu3b7a%2Bw%3D%3D.%2F7r3VU5YjBBt9SI5gMYM8dt4lhyuhG5dU1jovut7ays%3D),没设置iv密钥偏移量确实可以解,但是用crypto-js不设置iv就会报错,应该怎么用啊。
UX_siri
husky在jenkins打包找不到.git文件?
* cd project
* pnpm install
Scope: all 8 workspace projects
Lockfile is up to date, resolution step is skipped
Already up to date
. postinstall$ turbo run stub
. postinstall: • Packages in scope: @vben/eslint-config, @vben/hooks,
@vben/stylelint-config, @vben/ts-config, @vben/types, @vben/vite-config,
server
. postinstall: • Running stub in 7 packages
. postinstall: • Remote caching disabled
. postinstall: @vben/vite-config:stub: cache hit, replaying logs
aee9b5a8a56482ca
. postinstall: @vben/vite-config:stub:
. postinstall: @vben/vite-config:stub: > @vben/vite-config@1.0.0 stub
/var/lib/jenkins/workspace/data_assets_back/data_assets_web/internal/vite-config
. postinstall: @vben/vite-config:stub: > pnpm unbuild --stub
. postinstall: @vben/vite-config:stub:
. postinstall: @vben/vite-config:stub: [info] Stubbing @vben/vite-config
. postinstall: @vben/stylelint-config:stub: cache hit, replaying logs
452987acea040030
. postinstall: @vben/stylelint-config:stub:
. postinstall: @vben/stylelint-config:stub: > @vben/stylelint-config@1.0.0
stub
/var/lib/jenkins/workspace/data_assets_back/data_assets_web/internal/stylelint-config
. postinstall: @vben/stylelint-config:stub: > pnpm unbuild --stub
. postinstall: @vben/stylelint-config:stub:
. postinstall: @vben/stylelint-config:stub: [info] Stubbing @vben/stylelint-config
. postinstall: @vben/eslint-config:stub: cache hit, replaying logs
9bd54888982ea3f7
. postinstall: @vben/eslint-config:stub:
. postinstall: @vben/eslint-config:stub: > @vben/eslint-config@1.0.0 stub
/var/lib/jenkins/workspace/data_assets_back/data_assets_web/internal/eslint-config
. postinstall: @vben/eslint-config:stub: > pnpm unbuild --stub
. postinstall: @vben/eslint-config:stub:
. postinstall: @vben/eslint-config:stub: [info] Stubbing @vben/eslint-config
. postinstall: Tasks: 3 successful, 3 total
. postinstall: Cached: 3 cached, 3 total
. postinstall: Time: 314ms >>> FULL TURBO
. postinstall: Done
. prepare$ husky install
. prepare: husky - .git can't be found (see
"https://typicode.github.io/husky/#/?id=custom-directory" (https://link.segmentfault.com/?enc=S%2FCfzPhaZfi8Be5crX13cw%3D%3D.0tXZrte4tfT5UgQA10tq57xzgIMB3Ik0kUo0STtaOA4hue74Zyf5uDapqFgsiA0gmbip0Pkr9irCyf7nHA4KpQ%3D%3D))
. prepare: Failed
ELIFECYCLE Command failed with exit code 1.
UX_siri
android 申请相机权限没有弹出授权对话框怎么办?
android api level 29的设备上首次安装申请相机权限 ,没有弹出授权的对话框怎么办?
已经在清单文件中声明相机权限
并且声明了与相机应用的交互规则:
然后在需要使用相机的地方也动态申请了相机授权,但是死活不弹出相机授权对话框(应用首次安装或者卸载重装都如此 )。
public class TestActivity extends AppCompatActivity {
private ActivityResultLauncher faceActivityResultLauncher;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// ... 省略代码
this.faceActivityResultLauncher = this.registerForActivityResult(
new ActivityResultContracts.StartActivityForResult(),
result -> {
if (result.getResultCode() != Activity.RESULT_OK) {
UiCommon.toast(this, "相机拍摄失败");
return ;
}
this.updateFace(this.face);
}
);
// 申请授权
ActivityCompat.requestPermissions(this, new String[] {Manifest.permission.CAMERA}, TEST_CODE);
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
boolean isGranted = PermissionCommon.permissionResultHandle(this, requestCode, permissions, grantResults);
switch (requestCode) {
case TEST_CODE:
if (!isGranted) {
// 省略部分代码 ...
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
this.faceActivityResultLauncher.launch(intent);
}
break;
default:
break;
}
}
}
这是为什么?该如何解决上述问题?
UX_siri
自适应设计中的高度调整难题?
我有个rem自适应的问题,请教下各位大神们。我拿到设计稿是1920x1080的,因为浏览器顶部有个功能区域,"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241104/61a11111d021fda7b1ba1187afb5e092.png),就是这里,会导致浏览器的可视高度小于1080px。我打算做rem的自适应,我设置了body的font-size:100px,再设置一个div的高度为1rem,获得的是100px,但是这和设计稿的100px是不一样的(因为多了浏览器的工具栏目),会导致ui错位。这该怎么解决呢?
我想的是怎么适配高度?设计稿1080的高度,浏览器可视高度小于1080.
我的自适应代码如下
export const selfAdapter = () => {
//页面初始化,针对屏幕不是1920*1080的页面尺寸
let designSize = 1920; // 设计图尺寸
let html = document.documentElement;
let wW = html.clientWidth; // 窗口宽度
let rem = (wW * 100) / designSize;
document.documentElement.style.fontSize = rem + "px";
const resize = () => {
let designSize = 1920; // 设计图尺寸
let html = document.documentElement;
let wW = html.clientWidth; // 窗口宽度
let rem = (wW * 100) / designSize;
document.documentElement.style.fontSize = rem + "px";
};
window.addEventListener("resize", resize, false);
};
UX_siri
vue如何实现【语音转文字】? 或者获取实时麦克风数据?
看看这个文章,有封装好的库:"vue3实现H5网页录音并上传(mp3、wav)兼容Android、iOS和PC端" (https://link.segmentfault.com/?enc=xm3CaQf2%2FrRj6pcAIo%2B5KQ%3D%3D.rO61OEoSD2bWcf54CsRU1ia51EM%2BrgeNSQlKEFBAN7bmTF42IXHoSYbDI74sVgBAwYzOrYZhT8no499vE7pS0%2Be2PlEKbSl4YWQPYWs3fx%2FtBaYMIOUSRS5BSK68SrBJ)
github文档:"https://github.com/xiangyuecn/Recorder" (https://link.segmentfault.com/?enc=PmO1kpj5UKzV%2FPb9TFGeHA%3D%3D.u%2BCdECjz23cFTrexKcRPxzpGNOUYBkjEiWpIzSegr3x2w4ZffmAanMVOizrQUAJ1)
"企业微信截图_17024519593974.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241031/e453b7cb9901e1bb0b7f3601810c5877.png)
UX_siri
控制台打印不显示组件名称的原因 ?
控制台打印为什么不显示组件名称
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241030/8faaf7b30a0370be1d3b9525ebba51ca.png)
UX_siri
amh面板lngx反代无法使用,出现不能访问怎么解决?
amh的LNGX反代不能使用,目前已经删了lnmp,只保留了LNGX;后端外网ip:3000,在我本地电脑能访问;反代后访问域名无法访问。系统是Debian12
https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241023/b7ea566048738e830fa56a42016d7942.png
传递HTTP/S协议 那些也勾过,目前只有一个lngx环境,只有一个站。后端是one-api通过IP加端口可以正常使用。要反代这个one-api。反代后访问域名无法访问。有配置ssl证书。没有cdn。
https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241023/cdc68ecdad4ef4c7206d64be3dc88caf.png
UX_siri
小白对 JWT 跟 session 有些疑问,期望解惑?
看了了许多文档,我的理解 JWT 本质上是一种将用户信息放到浏览器持久化的方案,这种方案要求服务端必须相信请求携带的 JWT 信息。
这种方案下是否能实现 用户权限动态变更的业务,比如踢人
若实现不了,需要服务端根据 JWT 查找用户信息, 是否又需要回归到 session 的解决方案
UX_siri
地图弹窗不显示,是什么原因呢?
开发的时候没问题,但是部署到Linux系统后使用vue和地图,然后正常直接打开地图的话没问题,但是弹窗就显示不出来地图一片空白
UX_siri
Nacos修改密码后服务无法启动的解决方法?
进nacos的users表,手动修改password字段值,使用
"https://codegen.bqrdh.com/crypto?alg=Bcrypt" (https://link.segmentfault.com/?enc=tTUIjCw%2FU9lEFYGXNPeLaQ%3D%3D.3wMGISSC2Ys6ZJGnmT99OCEua2b2a9KRiP02NR1yf7ZhZpHzI4WzcxhkCiMKf2bn)
生成密码,替换上去就行
UX_siri
我通过js修改了div的id属性,但是虽然id确实被改变了,样式却没有改变,这是为什么?
看了下是生效的,但你这里用了"绝对定位",id交换后样式生效,元素"位置"也换了,看起来就像没生效一样
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/7e9b9e8a7e7f064e3d9f411d2d3df221.png)
UX_siri
我再react中使用zustand。我想增加命名空间。一直报错?
看着感觉你是不是想要下面这种:
type PartialSet = (s: (state: T) => Partial) => unknown;
const createAbout = (set: PartialSet) => {
return {
count: 0,
increase: (n = 1) => set((state) => ({ count: state.count + n })),
decrease: () => set((state) => ({ count: state.count - 1 })),
}
}
const createHome = (set: PartialSet) => {
return {
n: 0,
increase: (n = 1) => set((state) => ({ n: state.n + n })),
decrease: () => set((state) => ({ n: state.n - 1 })),
}
}
export const useStore = create()((set) => ({
about: createAbout((innerSet) => set(state => ({ about: {...state.about, ...innerSet(state.about)} }))),
home: createHome((innerSet) => set(state => ({ home: {...state.home, ...innerSet(state.home)} }))),
}))
// 使用方式:
useStore().about.count)
useStore().about.increase();
UX_siri
sass 里 mixin 是什么?
mixin是什么?
* 今天在学习sass的时候遇到了"mixin",看起来像个函数(为什么不直接叫函数呢?),通过指定一些参数产生一些声明,可以通过"@include"来引入这些声明。这样可以不用每次都写一些声明,只需要指定参数就可以了。
* 在学习js时也遇到过"mixin",用于实现"多重继承"。
* 这两者是类似的吗(在一个规则中通过"include"来导入多个声明,看起来也像是多重继承)?"mixin"到底是一个什么概念呢?
UX_siri
aliyun 的 redis lua 的随机值不随机!?
aliyun 的 redis lua 的随机值不随机!?
def get_cookie(hkey: str) -> str | None:
from core.redis.models import client
# Use Lua scripting to get a random field from the hash set
lua_script = """
local fields = redis.call('HKEYS', KEYS[1])
if #fields == 0 then
return nil
end
local random_index = math.random(1, #fields)
local field = fields[random_index]
return random_index
"""
return client.eval(lua_script, 1, hkey)
同样的函数,在 redis 官方的 7.2.1 下面是每次都可以取到随机的 cookie
但是在 aliyun 的 redis 下面,每次取到的值都是一样的
"图片.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241013/ff4e7bb0bbc416c0145de56cf3e4ceb2.png)
UX_siri
vscode 中,如何在自动格式化时,如何将标签变成自闭合标签?
vscode 中,如何在自动格式化时,如何将标签变成自闭合标签 ?
如 "" 变为 ""
如 "" 不发生变化,还是 ""
如 "" 变为 ""
编辑器:VS Code
语言:React + TS + TSX
插件:Lint + Prettier
编译工具: Webpack(RsPack)
UX_siri
网页上如何使用自己电脑上安装的字体文件?
@font-face {
font-family: 'MyFont';
src: url('/style1/font/荆南麦圆体.otf') format('truetype');
}
font-family:"荆南麦圆体", "微软雅黑", "Helvetica Neue", Helvetica, Arial, sans-serif;
应该是
font-family:"MyFont", "微软雅黑", "Helvetica Neue", Helvetica, Arial, sans-serif;
***
安装完字体之后,重启试试,我在本地试着是可以的。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/e092602105435acaff11a745d4947dbf.png)
UX_siri
如何做文本长度逐渐变短?
"shape-outside" (https://link.segmentfault.com/?enc=IEDZ6PITywxL926fFe4C%2FA%3D%3D.1rmY4jxN9X3thL6WSoxS%2FR582Ez7RrfcrXbFEZlnCa4BAfa7xBZoCSiGQcnyB6%2FlOJfcBEJrei3Y%2BzXs4M5nFA%3D%3D)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/a9a23e2e6d6657d794a6b774d57ea90a.png)
"codepen" (https://codepen.io/Jin-Moriarty/pen/XWGZqae)
UX_siri
vm虚拟机Linux系统连不上外网Network is unreachable?
本地vm虚拟机Linux系统连不上外网,NAT模式
1、虚拟机配置
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/f8bedaa3439d2da8334a6f5ee6bdca8a.png)
***
2、虚拟网络编辑器
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/4ab18ad5912888a3cee8dd2593ae2dde.png)
***
3、网络连接
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/897b9059dc0830936a329d4104fdf453.png)
***
4、虚拟机linux系统ifcfg-ens33配置
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/2721ea22364e80bffd797e421110233e.png)
UX_siri
验收vue2框架的前端项目,应该用什么办法检查代码质量呢?
用sonarLint插件:
"官网" (https://link.segmentfault.com/?enc=2Ie44FCvTXoVkmdWKDwKtg%3D%3D.uqUzEQAhi7ILxt%2BN%2Fc7hZg0muGpnhse%2BoOyR1gImEg5XGj0O2uuB6jswr7TPwypL)
"https://blog.csdn.net/abs_botton/article/details/125826573" (https://link.segmentfault.com/?enc=as1Su76a0IlVHfeBgPyBeQ%3D%3D.e1dy0wt%2FHrE3%2F7QZWLfyAceIydc%2FMHNU7rdRIOFj0lVe1i1ZOw2X1cGc7K%2Faupa7CfguiW0%2FnSUmCi8mlDHuCw%3D%3D)
UX_siri
小程序开发者工具用mp-html为什么视频显示不出来?
微信开发工具的问题,更新到最新版即可显示= =
UX_siri
vscode 文件--首选项--设置 报错 cannot read properties of undefined (reading 'el')?
vscode 文件--首选项--设置 报错
你们有遇见过这样吗 win11系统,彻底删除重新安装了,也重启了 都不行,还没百度到。。。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241010/e26c0aad955b13c132bf6badb5c84193.png)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241010/97af1d05e9564286db6085e967c880f0.png)
过了一会又变成这个错误了
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241010/438d080b7def8c9292ea4755a6734597.png)
UX_siri
vue 组件批量绑定属性 v-bind="$attrs" v-bind="$props" 能同时使用吗?
不行,会报错:
Errors compiling template:
duplicate attribute: v-bind
可以用评论中说的 "" 来实现。
UX_siri
Vue.js与Vuetify怎么实现可编辑的表格单元格?
"https://play.vuetifyjs.com/?preview=false#eNqdVN9P2zAQ/ldOfhl..." (https://link.segmentfault.com/?enc=GNYEsOlN%2BQs9mM7rqkPSDA%3D%3D.Enz5GpQW47crbO9ykN9YSRSyQRFgR5HoK%2BNuHaZwtFKEaOk2QUbVxNkE6cB7fNxZsxsBUaJvCd5xYuWk7z2K2Oi3IkcUhkk%2BHQE9qxA8J3MZVtPGSbo4KXguIXnYcGn0pRVcL7G5YdMZuhPv4zZT4Hv83HElrVD9lrkEEFkzxouasqXaGCbiurJD3YYwbfqrgtK8zriFi%2BRnFFlc0opKgbQTnSBkDGIaL%2Fhbzp5ykMpb%2Bal4PmECFgsZhZZI9PqT7nbZfygMeoDRWaMXxm5hG43UVfWmQP4Vi0ZO61npQoHLG0W3DbJ8Cmzohj2GbSTTe0oqfTTO0H%2BEuR4mRsMlA%2FjWUs9BsJaVHMm2uq2IfSg5YElkUL%2Bpc6BA0l%2FgPVsM7Xx0zV9kP9Em0x592nJhXE95G3NHezIiHQ%2BKJJRI%2FvJqo77s6%2BZuvDDUv2nzKgcZ4tAxZ1Vh2Z2CWLo6KXP706PaN2rUUm%2FwLFr2LYmlLlCOkT%2FQ%2F96S0Mz34Qht6dnRhnutq69jfKZxbwsIYNSfeIEOFNuIpoYQx6kDFU1QK9VQcT%2FXPw6aGst%2Bi975Fb08oKS98pTvBmEXEdeVfIFzxHfJMMAlBFiwc0x%2B%2FEeidGanFGfThf4I58hPCGR53WDEy8wv%2Fcs5cZCz19P%2FZkxdjqryEVVrhzbJWS%2FgiWdb3xgGVViCiamDsYwMNW1%2BHWpt21wvCCCyepBIuXREOSh7LCRvAKlOt7aXuwI2q4%2FT7dwvk2XHIHviVZY4MbCrWZAzC5MlV60Hr1dngvToR%2BC6G%2FskWjEIuNM%2BzkZFuka6pby3%2BfISgdnQxSamjXvK2mPHkXIYk9tpz%2BBZyXJadTrvuuI4ydqsCKaW5E1l2OwBXOWHBan7ARKu69THxHhH0rdc5mr81GINt8dbw7pUJrT9hg%2FEBEF1pboqgBFQ4EiZerKE69C9WW%2Fd%2Fw7S2SUqo2LaylXoJQWzsktRuah7uo2vWLUs%2FKSluhSV4BeHRx0fCJ7ihktBfpY0NoK%2B4HKGvDE6AoqQqFvE3jtHHPnt7W2MtPgRrksB80W10fV%2FekUkHUKRHPwkk75Q7Z3juC35RbhYUrnc%2FX3SmrliYXg7SfQDA3WHIU0zuL65KyVPQMlDUlmRY7NYgthSmsl3YPgPJYQftR4OVgTHUdp2nNgVOytNvw%3D%3D)
UX_siri
Vue3 数组去重后多出 Proxy(Object) 数据的原因?
"vue3"的"ref"出来的数据,被特殊处理过。你的"addServiceObject"是不是"ref"出来的?
如果是,使用的时候调用一下"toRaw"。
示例:
import { ref, toRaw } from 'vue';
const obj = ref({
serviceAttributeList: [
{
name: 'Duo',
},
{
name: 'Emma',
},
],
});
const list = [
{
name: 'Duo',
},
{
name: 'Emma',
},
];
const set = new Set([...list, ...toRaw(obj.value.serviceAttributeList)]);
const result = Array.from(set);
obj.serviceAttributeList = [...new Set(result)];
console.log(obj.serviceAttributeList);
另外,"new Set"默认无法帮助对象数组去重,如果你非要,则需要事先将对象转换为字符串才行。
obj.serviceAttributeList = [...new Set(result.map(JSON.stringify))].map(
JSON.parse
);
UX_siri
Uniapp H5 调用uni.chooseLocation地图空白解决?
uniapp编写的h5,调用uni.chooseLocation地图空白
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241007/cfc34fc6a4730a5a017d4d6a7e75826b.png)
"7b557727306598f5746ddf404667ea8.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241007/43860cd6f2229f0abceea24465296a39.png)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241007/19b9eeb38dd1092f751e08f57d04be4e.png)
正常显示该地图功能
UX_siri
如何在Web端播放RTMP流?
rtmp协议的拉流地址,web端能直接播放嘛。
比如 rtmp://xxx/xxx/xxx
看到网上各种使用 vue-video-player/video-flash 插件的,自己尝试过后发现并没有用,有说时因为谷歌禁用了flash
,所以想问下有没有什么好的方法或者插件能进行播放的