CO_co
如何本地化node_modules中某些包的dependencies?
{
...
"scripts": {
"preinstall": "npx npm-force-resolutions"
},
"resolutions": {
"gesto":"file:packages/gesto"
}
}
CO_co
怎么理解Observable中的流?
«mergeMap操作符用于将源Observable发出的每个值“映射”到一个新的Observable上,并将这些新Observable发出的值“扁平化”地合并回一个单独的Observable中。这意呀着,如果源Observable发出的多个值被映射成多个Observable,那么这些Observable发出的值会交错地发出,形成一个连续的流。»
请问下,这里说的流是什么意思?
请问是否是指的是数据流的意思?
CO_co
position: sticky失效?
没有失效, 是因为层级低被表格盖住了
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250107/7100fb3b47d4bade852d4f7f88bef589.png)
".el-table"是加了"position: relative;"样式, 并且在下面导致层级高于"toutou"
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250107/700f6fc83cad9c5140e8745fc3e1447b.png)
CO_co
uniapp中,如何在别的页面收到onBLECharacteristicValueChange返回的信息?
我在二级页面连接了蓝牙(在其他的页面连接蓝牙),
然后需要在首页显示onBLECharacteristicValueChange监听返回的信息,
但是目前只能在这个二级页面收到监听。
而回到主页后就不行了,把这个监听放在主页的onLoad也没用,或者监听放在二级页面但回主页后也收不到消息,,
请问下大神们要怎么操作
这个api的文档地址:"https://uniapp.dcloud.net.cn/api/system/ble.html#onblecharact..." (https://link.segmentfault.com/?enc=Wi7EPzWD3T9K1VEzqxeVnw%3D%3D.o8N7iI4aQT1X5vsu98UWVAnJ60%2BXVqVdVFtIG2FW1wDHe1cSkWiuix8MFTdyM9UigcKYGGuZTOfzmox2IQzJc%2F6BA1Xsg6Ou9e5ciJ0B2QI%3D)
小弟在这里先感谢各位大神们,感激不尽,祝大神们发财祝大神们取漂亮老婆
CO_co
请问要如何才能对一个antd组件的多个class做样式修改呢,使用多className覆盖不能做到?
现在有一个需求,就是对antd的Collapse做一个样式的修改,去掉border-radius:
// TestComp/index.tsx
import type { CollapseProps } from 'antd';
import { Collapse, Button } from 'antd';
import styles from './index.module.css'
const text = `
A dog is a type of domesticated animal.
Known for its loyalty and faithfulness,
it can be found as a welcome guest in many households across the world.
`;
const items: CollapseProps['items'] = [
{
key: '1',
label: This is panel header 1,
children: {text},
},
{
key: '2',
label: 'This is panel header 2',
children: {text},
},
{
key: '3',
label: 'This is panel header 3',
children: {text},
},
];
const TestComp: React.FC = () => {
const onChange = (key: string | string[]) => {
console.log(key);
};
return ;
};
export default TestComp;
css代码如下:
// TestComp/index.module.tsx
.myCollapse:global(.ant-collapse) {
border-radius: 0px !important;
}
/* .myCollapse2:global(.ant-collapse-item:last-child) {
border-radius: 0px !important;
} */
效果:
我们可以看到顶部左右是已经去除,但是下面的最后一个item没有去除:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241231/4ccfe00c4fe605291081e895758a9e6c.png)
所以我进一步想要对".ant-collapse-item:last-child" 做修改:
// TestComp/index.module.tsx
.myCollapse:global(.ant-collapse) {
border-radius: 0px !important;
}
.myCollapse2:global(.ant-collapse-item:last-child) {
border-radius: 0px !important;
}
// tsx
;
但是不生效:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241231/83bc816506f5a01459727be06c4bf7d5.png)
===
请问要如何才能对一个antd组件的多个class做样式修改呢?
===
编辑-01
代码如下:
"https://codesandbox.io/s/ynk3tr" (https://link.segmentfault.com/?enc=9MBtT68dacU8t3KV8CXDYA%3D%3D.3K7pENa0JsmYnVgSfyxDPGH%2BKt79DM36TItlN0SCxWc%3D)
CO_co
数据库统计符合条件数据优化?
要不这样,如果是where条件不变的情况,你可以定时当月一号把上个月的数据统计并弄张表存起来,这样你count的时候就直接从这个分析号的比表里面找数据就行了,不就用即时算了
CO_co
一个对象数组,现在需要获取数组中键重复的元素,只要一组代表性的键,对于值的处理希望能够按照原来对应键来摆放,?
const data = [{label:'a',value:'1'},{label:'a',value:'2'},{label:'b',value:'1'},{label:'c',value:'1'},{label:'d',value:'1'},{label:'a',value:'3'},{label:'b',value:'2'},{label:'c',value:'2'},]
const newData = data.reduce((newArr, item) => {
const sameLabelItem = newArr.filter(_item => _item.label === item.label)[0] // 现在 newArr 中找有没有相同 label 的对象
if (sameLabelItem) { // 如果有相同 label 的对象,直接在这个相同label对象的 value 中 push item 的 value
sameLabelItem.value.push(item.value)
} else { // 如果没有,newArr 直接 push item
newArr.push({ label: item.label, value: [item.value] })
}
return newArr // 返回 newArr
}, [])
console.log(newData) // 你要的结果
CO_co
如何修改vue-cli3预设的terser-webpack-plugin?
现有一个基于vue-cli3和webpack4的vue2项目,我使用vue-cli-service
inspect命令导出webpack配置后,minimizer部分如代码所示:
minimizer: [
{
options: {
test: /\.m?js(\?.*)?$/i,
chunkFilter: () => true,
warningsFilter: () => true,
extractComments: false,
sourceMap: false,
cache: true,
cacheKeys: defaultCacheKeys => defaultCacheKeys,
parallel: true,
include: undefined,
exclude: undefined,
minify: undefined,
terserOptions: {
compress: {
arrows: false,
collapse_vars: false,
comparisons: false,
computed_props: false,
hoist_funs: false,
hoist_props: false,
hoist_vars: false,
inline: false,
loops: false,
negate_iife: false,
properties: false,
reduce_funcs: false,
reduce_vars: false,
switches: false,
toplevel: false,
typeofs: false,
booleans: true,
if_return: true,
sequences: true,
unused: true,
conditionals: true,
dead_code: true,
evaluate: true
},
mangle: {
safari10: true
}
}
}
}
]
可以看到,里面并没有new TerserPlugin(),但是里面确实又有terserOption,请问下大佬们这是不是vue-cli内置了terser插件,如果是内置插件的话为什么不会被inspect导出来呢,而且如果是这种没有new
TerserPlugin()的情况,我该如何修改这个插件的配置或者删除这个插件以更换别的插件呢?
CO_co
h5如何实现EXCEL,word文件在线预览?不要下载直接看?
微软 Office Web Viewer
官网的例子:
«"https://www.microsoft.com/en-> us/microsoft-365/blog/2013/04/10..." (https://link.segmentfault.com/?enc=0iNCU8gTPArklM%2FC4AmBFg%3D%3D.nkPL%2B3jsj32FsJ3TFQN49zJZ7xp3FAy4aSvM0pV%2FLArtNASRbfvDuRK2wtSBIrlESYDNspvLhNtW3mP%2BqRsGjCoipFEZb4zBjtvuly4ridUZZqAM0uLHya%2Fi%2FPvtj1%2FvBFmYasrakNdm3BXgsZaHfoD18qRFE%2BwoPieCCIclBJ0%3D)»
这样
vue-office
«"https://www.npmjs.com/package/@vue-> office/excel" (https://link.segmentfault.com/?enc=VaDt62tjLj8kFImPfhG7Rw%3D%3D.LAQPGjpJ%2BNuaQ2R7pBhG%2FH%2FlQSUBDTwUGmPd4%2FGvJmHHGSa%2Bq6wsZJIvH7vhJLwt)»
CO_co
vue 进行 props 类型检查用 instanceof 不会有问题吗?
在查阅官方文档时注意到 props 类型检查这一章节。
"https://cn.vuejs.org/guide/components/props.html#prop-validation" (https://link.segmentfault.com/?enc=sjAwRIR40DwjKhguod691g%3D%3D.AE%2FOjaZndveHONOxIGYwMKDW3hxKVLM4xrgMFaVZu5uVpoaeCP6es3%2BK7McRk%2FX0MUx5%2B9HgZV8fdOD5ecbpxONdnUYV2L%2BYkQbUnCNDGTA%3D)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241220/7e4bec0a8a570a7d834405959059ae08.png)
***
此时按照官方的说法
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241220/1c33bce2958c091ac2ea6de43ad02980.png)
不会有这样的问题吗?
const props=defineProps({
name:Array
});
props.name instanceof Array // true
props.name instanceof Object // true
CO_co
es6...扩展运算?
这个用C语言中的指针很好理解,result.push(path),只是创建了个指针,指向了path数组。修改path,就同时修改所有push进入result的值。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241215/a8f40cc32123c1cf9d1d90056df508a0.png)
而result.push([...path])则是对path进行了解构,然后再进行push操作,存入result数组,此时修改path,对result无影响。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241215/862e18e14c9e3d8d1cf452d6082a20a6.png)
也可以先看看这个,更好理解。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241215/32da35c0b86ba77276fd197970f95e2c.png)
CO_co
封装axios时,创建axios时用到vuex,getter is not defined?
创建 axios 的时候 vuex 还没有创建,所以 "getters is not defined"。注意,所有我们 import 进来的 JS
都会先执行一遍,所以你的代码里,"service = axios.create()" 其实很早就执行了。
解决的思路一般有两个:
1. 能否提前 store 的初始化,或者延后 axios 的初始化
2. 我猜 "iswx" 是判断执行环境是否是微信?类似这种全局常量建议不要放在状态管理工具里,直接用一个全局对象存下来就好
CO_co
如何在旋转后的父元素中使用draggable拖动元素?
下面的例子在 Chrome118 和 FireFox118 中运行良好,复制到一个新的 html 文件再用浏览器打开就可以体验:
Drag in rotated
.stage {
position: absolute;
width: 800px;
height: 800px;
outline: solid 1px #2f89ff;
transform-origin: center;
}
.dancer {
position: absolute;
width: 16px;
height: 16px;
cursor: move;
background-color: red;
border-radius: 8px;
}
.inputs {
position: relative;
z-index: 10;
}
旋转:
缩小:
const metaMatrix = [1, 0, 0, 1, 0, 0];
let actualAngle = 0;
let actualScale = 1;
function applyMatrixToStage() {
const matrix = new DOMMatrixReadOnly(metaMatrix)
.rotate(actualAngle)
.scale(actualScale)
.toString();
stage.style.transform = matrix;
}
function toNormalMatrix({ a, b, c, d, e, f }) {
return {
_value: new Float32Array([a, c, e, b, d, f]),
point([x, y]) {
const [m11, m12, m13, m21, m22, m23] = this._value;
return [m11 * x + m12 * y + m13, m21 * x + m22 * y + m23];
},
};
}
angle.addEventListener("change", ({ target: { value } }) => {
actualAngle = +value;
applyMatrixToStage();
});
scale.addEventListener("change", ({ target: { value } }) => {
actualScale = +value;
applyMatrixToStage();
});
stage.addEventListener("mousedown", ({ target, clientX, clientY }) => {
if (target === dancer) {
const { style } = dancer;
const matrix = new DOMMatrixReadOnly(metaMatrix)
.rotate(actualAngle)
.scale(actualScale);
const startAt = [parseFloat(style.left), parseFloat(style.top)];
const dragCallback = ({
target,
clientX: _clientX,
clientY: _clientY,
}) => {
// 把逆变换应用到拖动的差量即可
const offset = toNormalMatrix(matrix.inverse().toJSON()).point([
_clientX - clientX,
_clientY - clientY,
]);
style.left = startAt[0] + offset[0] + "px";
style.top = startAt[1] + offset[1] + "px";
};
const cancelDrag = () => {
stage.removeEventListener("mousemove", dragCallback);
};
stage.addEventListener("mousemove", dragCallback);
stage.addEventListener("mouseup", cancelDrag);
stage.addEventListener("mouseleave", cancelDrag);
}
});
CO_co
请教一个JS类型推导的问题?
1. 获取节点的构造函数:console.log(Object.getPrototypeOf(node).constructor.toString());
内容为:
function TreeNode(val, left, right) {
this.val = (val===undefined ? 0 : val);
this.left = (left===undefined ? null : left)
this.right = (right===undefined ? null : right)
}
«和你复现的写法完全一致。»
2. 获取上述构造函数的原型对象:console.log(Object.getPrototypeOf(node).constructor).prototype
从这里得知该原型为:
{
[Symbol(nodejs.util.inspect.custom)]: [Function (anonymous)]
}
«上面只有一个方法"Symbol(nodejs.util.inspect.custom)"。»
3. 打印上面的方法:console.log(
Object.getPrototypeOf(node).constructor
.prototype[Symbol.for('nodejs.util.inspect.custom')].toString()
)
得到该方法的源代码:
function (depth, opts) {
return serializer.serializeTree(this);
}
"serializer"
不在全局环境,应该在模块或者定义"TreeNode"的封闭作用域(闭包)中,无法检测其函数源代码,不过从这个名字来看,是一个序列化函数。
根据掘金文章"util inspect
node" (https://link.segmentfault.com/?enc=%2B6aO7QpZdzFqSfP945ujVw%3D%3D.yAuzI2P7Q6JUEsVo9aIkL0UB2JYaUoHMEUcw7cKKE1dI%2FYeAGJqEP6xyrquX1Q8S):
«"util.inspect"是Node.js中的一个模块,它提供了将任何JavaScript对象转换为字符串的功能。它通常用于调试和日志记录。当您在Node.js中使用"util.inspect"函数时,它会返回一个表示传递对象的字符串。您可以通过传递不同的选项来自定义字符串的格式。例如,您可以指定缩进、深度、颜色等选项。»
4. 从上述描述看,这个函数的作用是在打印的时候把对象序列化为指定的字符串。
5. 如果要验证上述猜想,可以:const key = Symbol.for("nodejs.util.inspect.custom");
class SubTreeNode extends TreeNode{
"key"{
return "Exactly!"
}
}
console.log(new SubTreeNode(8)); // Exactly!
不过浏览器开发者工具的"console.log"与 Node JS
环境下的行为并不一致,浏览器开发者工具中打印的时候,并不会将对象序列化为字符串,所以在浏览器中较难模拟这样的行为(可以通过"toString"方法自定义序列化方案,但只在拼接字符串的时候有效)。
至于将树展开成为数组的具体方案,应该是做了一个广度优先遍历。
CO_co
为什么虚拟线程无法在虚拟线程池中执行?
正确的做法是给调度器传真正的线程对象,它会以虚拟线程形式运行,而不是给它传虚拟线程,要么你就干脆直接对虚拟线程使用start()方法
改法一:
private static void methods5() {
try (ExecutorService executor = Executors.newVirtualThreadPerTaskExecutor()) {
Thread vt = new Thread(() -> System.out.println("vt task executed."));
for (int i = 0; i {
System.out.println("vt task executed.");
});
}
}
}
另外虚拟线程没有必要使用池化技术,因为创建和销毁的代价非常小,池化的话属于是违背初心了
CO_co
请问两个系统数据库之间想要做同步系统,如何有更新ID或是token可以判断?
请问两个系统数据库之间想要做同步系统,如何有更新ID或是token可以判断?
目前需要在每个表格增加一个栏位叫更新ID,每次有更新时会去随机生成一个新的ID
另外还要新增一个栏位叫更新日期,每次更新同时更新此日期
然后判断更新日期>=当日半夜12点 + 更新ID是否不一样
假如True才去做此行数据的同步动作
请问原生sql server 是否有自带的隐藏栏位或是其它方式能做到?
询问过AI
请问两个系统数据库之间想要做同步系统,如何有更新ID或是token可以判断?
目前需要在每个表格增加一个栏位叫更新ID,每次有更新时会去随机生成一个新的ID
另外还要新增一个栏位叫更新日期,每次更新同时更新此日期
然后判断更新日期>=当日半夜12点 + 更新ID是否不一样
假如True才去做此行数据的同步动作
请问原生sql server 是否有自带的隐藏栏位或是其它方式能做到?
SQL Server 没有自带的隐藏栏位,但可以透过使用 ROWVERSION 或 TIMESTAMP 栏位来实现类似的功能。
ROWVERSION 是一个自动产生的二进位数据,每当一行资料被更新时,ROWVERSION 的值就会自动更新。您可以在同步时比较源和目标数据库的 ROWVERSION 值,如果不一样就进行同步操作。以下是一个示例:
plaintext
copy code
-- 在表格中新增 ROWVERSION 栏位
ALTER TABLE MyTable ADD RowVersion ROWVERSION
-- 比较源和目标数据库的 ROWVERSION 值
SELECT * FROM MyTable WHERE RowVersion > @LastSyncRowVersion
TIMESTAMP 是一个类似 ROWVERSION 的栏位,每当一行资料被更新时,TIMESTAMP 的值也会自动更新。您可以在同步时比较源和目标数据库的 TIMESTAMP 值,如果不一样就进行同步操作。以下是一个示例:
plaintext
copy code
-- 在表格中新增 TIMESTAMP 栏位
ALTER TABLE MyTable ADD MyTimestamp TIMESTAMP
-- 比较源和目标数据库的 TIMESTAMP 值
SELECT * FROM MyTable WHERE MyTimestamp > @LastSyncTimestamp
请注意,ROWVERSION 和 TIMESTAMP 栏位的值只在资料行更新时才会更新,因此如果只是修改了资料行中的其他栏位,而没有修改 ROWVERSION 或 TIMESTAMP 栏位,那么同步操作就不会被触发。另外,ROWVERSION 和 TIMESTAMP 栏位的值是二进位数据,不是日期或时间,因此不能直接比较大小,需要使用特定的函数进行比较。
CO_co
求助:element-plus如何实现动态多级表头?
数据需要自己转下 或者后端就返回那种格式
tableInfo(){
let tableData= [
{
area: "NKA_门店1",
fullTimeNCs: [
{ label: "1个店员评级金额", price: "100" },
{ label: "2个店员评级金额", price: "400" },
{ label: "3个店员评级金额", price: "600" }
]
},
{
area: "NKA_门店12",
fullTimeNCs: [
{ label: "1个店员评级金额", price: "100" },
{ label: "2个店员评级金额", price: "400" },
{ label: "3个店员评级金额", price: "600" }
]
},
{
area: "NKA_门店13",
fullTimeNCs: [
{ label: "1个店员评级金额", price: "100" },
{ label: "2个店员评级金额", price: "400" },
{ label: "3个店员评级金额", price: "600" }
]
}
]
let headerList=[]
tableData.forEach((item)=>{
item.fullTimeNCs.forEach((citem,cindex)=>{
let key=`customFiled${cindex+1}`
item[key]=citem.price;
let find=headerList.find(i=>i.label==citem.label)
if(!find){
headerList.push({
key,
label:citem.label
})
}
})
})
return {
headerList,
tableData
}
}
CO_co
vue2如何查看什么导致了computed的重新求值/更新?
监听一下:
watch: {
ccc(newVal, oldVal) {
console.log('ccc changed!', newVal, oldVal);
}
}
CO_co
MacOS 下的VScode无法使用 command + 单击自定义组件名跳转到对应的 .vue 文件如何解决?
问题描述
对于同一项目,在 Windows10 下是使用 "ctrl+单击" 可以跳转到对应的 ".vue" 文件。但是在MacOS下却无效。例如我定义了一个
"BasePagination.vue" 这个组件并使用 "unplugin-vue-components"
插件自动注册注册该组件。项目可以正常运行,但是唯独在 MacOS 下无法使用 "command+单击" 跳转。
Windows:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241123/88bf1e3d00ec7f752b0fb435cb2dea34.png)
MacOS:
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241123/6763a1ebe7e1678b55d176c3e92eb02c.png)
尝试过的方法
* 重装 VScode
* 只安装 Vue 相关的 VScode 插件
* 重启电脑
* 删除 node_modules 重新下载项目依赖
开发环境
* MacOS Ventura 13.6
* VScode 1.84.0 (arm)
* PNPM 8.10.2
* Node.js 20.9.0
* Vue 3.3.4
* TypeScript 5.1.6
* unplugin-vue-components 0.25.2
CO_co
vue3 项目使用.prettierrc自动保存,元素标签换行风格如何配置?
"https://prettier.io/docs/en/options#html-whitespace-sensitivity" (https://link.segmentfault.com/?enc=D6M9LPV2b94LgXuNrewFtA%3D%3D.ylTH4P0f6xzQSkpgxYMkiPKkkR6FuHerbGCughB2iVvGgF78Pmf0DipNYZKxVY%2FK4T9Z4JmRB6QopVE9X8qWTQ%3D%3D)
CO_co
js 对象循环拿值?
for (var item in arr) {
for (var s in arr[item].lists) {
console.log(arr[item].lists[s].count)
console.log(arr[item].lists[s].year)
}
console.log(arr[item].name)
}
CO_co
Python脚本导致数据库无响应的原因及解决方案?
关于python执行sql语句,数据库出现问题的原因排查:
如图1所示为我的代码,sqlboy,写py脚本方便取数(这个数据每天都要提取,已经提取了两三个月了)
最近有人找我反馈在他数据库执行sql语句时数据库卡死无响应,经排查是我的脚本所致(见图1)
"图1" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241113/16640d2d32bbec9efa60992610e81431.png)
排查图见图2--为所查询数据库的日志
"图2" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241113/be5f901b0548fc0094b6089568b237ef.png)
脚本执行耗时很快,不到一两秒就能查出结果!
数据库为阿里云的PolarDB,在另一个不同类型的(但也是mysql)的数据库查询时,从未出现过此问题,请教各位究竟是什么原因导致的数据库无响应了
想知道我的程序哪里有问题导致了数据库无响应了
我在网上搜索,似乎是 set autocommit=0 所导致的
CO_co
求zepto下能运行的lazyload懒加载靠谱插件?
你直接使用 jQuery 就行了,没必要使用 zepto, 他社区环境又不好 而且 jQuery 用在PC端,
所以jQuery考虑了很多低级浏览器的的兼容性问题。根本没必要去追求zepto
CO_co
怎么用代码生成Excel的组合图?
可以通过GcExcel来实现组合图,GcExcel支持各种Excel图表,具体可以参考:
"图表类型 - GcExcel 中文文档Java版 | 服务端高性能表格组件 - 葡萄城" (https://link.segmentfault.com/?enc=cPhIXTGxu1Na7unCG0yXwA%3D%3D.ERQQJG%2FmQRLXRys7L5sN1%2FlWJ0kD4z1wyV9NBb1NWpVWMujZO0w2h%2FhNAJ9sNg3GYK1NIUcGO5HrVmK3MoXBLJ8Z4tQkoiSyBhCVafz0DPeBpOeAp9LVHYkue%2FOzZtj3MxaBetQjC9eKqSr4SbN4fwrYf%2BrL5Z0EKnAmYpkngP0%3D)
生成组合图的代码如下:
public void ComboCharts(){
// Create a new workbook
Workbook workbook = new Workbook();
IWorksheet worksheet = workbook.getWorksheets().get(0);
IShape shape = worksheet.getShapes().addChart(ChartType.ColumnClustered, 250, 20, 360, 230);
worksheet.getRange("A1:B13").setValue(new Object[][]{
{"Blue Column", "Red Line"},
{75, 20},
{149, 50},
{105, 30},
{55, 80},
{121, 40},
{76, 110},
{128, 50},
{114, 140},
{75, 60},
{105, 170},
{145, 70},
{110, 100}
});
shape.getChart().getSeriesCollection().add(worksheet.getRange("A1:B13"), RowCol.Columns);
shape.getChart().getChartTitle().setText("Combination Chart");
//change series type
ISeries series2 = shape.getChart().getSeriesCollection().get(1);
series2.setChartType(ChartType.LineMarkers);
// Save to an excel file
workbook.save("output/CombinationChart1.xlsx");
}
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241105/b1bc7cdb36eb8126c7bfd5578de85357.png)
CO_co
mac 使用 adb 无法连接到小米手机做无线 adb 调试?
解决了,参考:"https://i.lckiss.com/?p=8195" (https://link.segmentfault.com/?enc=FGUth5bm3HDMLAA5xo4tiA%3D%3D.R0zmctECCDRXLrLN6lQy3H4ja8T%2BkA1mp3ksF8yZ3Aw%3D)
先用配对码配对一遍 adb pair
再用 adb connect 连接就行
CO_co
如何动态计算时间所处的范围?
如何动态计算时间所处的范围?
有如下场景,计算某一天的差旅补贴时(不考虑跨天),要根据出发时间t1和到达时间t2判断补贴的金额,同时出发时间的判断标准和返回时间的判断标准现在为12时(24小时制)。
现在有如下规则:
* t1>=(出发时间判断标准)12点,补贴为0.5,不考虑t2;
* t112(返回时间判断标准),补贴为1;
* t212 | 1
(出发时间判断标准)12点,补贴为0.5,不考虑t2;
* t1=18(返回时间判断标准),补贴为1;
* t2<18(返回时间判断标准),补贴为0.5;
如何去编写代码?
想了半天,感觉没有什么头绪
CO_co
请教本地PHP调试远端长连接的方法?
想请教本地PHP调试远端长连接的方法
人数不足,前端也去帮忙写写后端的服务(PHP)。
我知道出接口的任务,是本地跑测试库,写接口,启动项目,拿postman直接自测。
但是遇到这种与第三方长连接的,同事直接在宝塔上编写代码,再自测。
我心想两个人不走git,直接在服务器上编写,冲突了,或者看历史代码怎么办。
他们的理由是,外面购买的农业相关设备,数据传输到我们指定的ip服务器上,不能在本地环境测试
服务上跑的有tp6 workerman 设备通过mqtt发数据到我们服务器
曾经在长连接的那个php服务加了个xDebug,想接到本地,但是没成功
CO_co
请教一个css样式问题,文字白边并且有阴影?
请教一个css样式问题,文字白边并且有阴影,底是白色,我用以下实现了,文字白边但是阴影不能生效了,有好的解决办法吗,谢谢大佬
.text-with-border {
color: black; /* 文字颜色 */
text-shadow:
-1px -1px 0 #fff, /* 左上方白色阴影 */
1px -1px 0 #fff, /* 右上方白色阴影 */
-1px 1px 0 #fff, /* 左下方白色阴影 */
1px 1px 0 #fff; /* 右下方白色阴影 */
}
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241023/500a0a8e1999e2ea8e0e9257139d1311.png)
CO_co
为什么不是Vue.ts?
Vue3 的源码使用 TypeScript 全部重构,为什么还叫做Vue.js,而不是Vue.ts?
CO_co
webpack打包后js代码失效,函数功能出现not defined,请问应该怎么解决?
因为生成的"index.html"中,引入 "js" 添加了 "defer"。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/631573ca35ea5dcbb52a2ded7312182d.png)
"ck" 在 "onload" 中调用,js 已经执行,所以有效
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/c248a324a737f076215532d1cc56b721.png)
"lib" 调用时,js 还未执行,所以无效
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/223ca76dc6093dfd62fca16be22c055b.png)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/32210745cc4194ee19ac984858b1d94f.png)
«这个布尔属性的设置是为了向浏览器表明,该脚本是要在文档被解析后,但在触发 DOMContentLoaded 事件之前执行的。
"https://developer.mozilla.org/zh-> CN/docs/Web/HTML/Element/scr..." (https://link.segmentfault.com/?enc=MKm6I52m%2BuPPbEpfwT39Gg%3D%3D.biyYryedzbFiBLs1lcpclKHMiQwbI4OyXpWMqpS20%2BETL1WQW6gkV%2Bv1sxiTwGW32xAkI3AZ0hZAKrA1hjeET%2FsegRfxt4fOq3mQY29oHxc%3D)»
CO_co
android 父子视图都设置了点击事件,父视图监听事件不触发怎么办?
android 父子视图都设置了点击事件 点击子视图,父视图监听的事件不触发怎么办?我需要父子视图的时间都触发。
this.findViewById(R.id.btn).setOnClickListener((view) -> {
LogUtil.debug("child click handle");
});
this.findViewById(R.id.rootView).setOnClickListener(view -> {
LogUtil.debug("rootview click handle");
});
CO_co
React:如何使用useCallback以避免全量更新?
react 如何使用useCallback 避免全量更新?
在子组件的事件中使用useCallback
"fd3e60779771043277351a5329d1868.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/a272b1e2944e4a8b10be14abc41ebf08.png)
父组件 list.map 创建了子组件, 子组件触发事件导致 父组件的 list 发生变更, 于是组件全部发生了变化
这个过程中只有其中一个子组件发生了改变,所以我使用了 memo 包裹了一下
但是 传递的事件函数会重复创建,导致子组件全量更新
我应该如何使用useCallback 来实现顶点更新?
onDrop(name)}
onDragMove={(e: TKDragEvent) => onDragMove(e, index)}
onMouseOver={() => dispatch(setSelectPointKey(name))}
// 注释这样写会报错
// onDragEnd={useCallback(() => onDrop(name), [])}
// onDragMove={useCallback((e: TKDragEvent) => onDragMove(e, index), [index])}
// onMouseOver={useCallback(() => dispatch(setSelectPointKey(name)), [])}
/>
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/ea835fbd390ee932391197de457116e2.png)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/40d6574cb449602f487c586048031e73.png)
CO_co
Vue 3 computed 里面set 更新 props 传递过来的对象属性,怎么改?
"6f2efc6d897f2146298d638a8e8d6e8.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/cd6f121ee4fe40ae89b32187dd85557a.png)
"modal"是通过"props"传递过来的报错了,"unexceped mutation of modal prop" 这种怎么改?
export default defineComponent({
props: {
modal: Object
},
现在改成这种形式 "changeShow" 替换"modal.visible",这里set 会有问题,"set"这里怎么改?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241014/5336fa0e6992bd9369f85345efa2ac0c.png)
const changeShow = computed({
get() {
console.log('xxxxxxxxxxxxxxxxxxxxxx', props.modal, props.modal.visible)
return props.modal.visible
},
set(val) {
console.log('zzzzzzzzzzzzzzzz', val)
// props.modal.visible = val
this.$emit('update:[modal.visible]', val)
}
})
CO_co
vue + js 代码不生效?
也没搞懂你想要表达的需求,看你代码没有涉及到递增倍数只是纯提示。看是不是这样的,我按最简单办法搞。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/9a0623bb16a4b456e8cbae17c0779c88.png)
保存
export default {
data() {
return {
tableData: [
{
id: "12987122",
name: "王小虎",
price: "1",
amount2: "3.2",
amount3: 10,
},
{
id: "12987123",
name: "王小虎",
price: "2",
amount2: "4.43",
amount3: 12,
},
{
id: "12987124",
name: "王小虎",
price: "3",
amount2: "1.9",
amount3: 9,
},
{
id: "12987125",
name: "王小虎",
price: "4",
amount2: "2.2",
amount3: 17,
},
{
id: "12987126",
name: "王小虎",
price: "5",
amount2: "4.1",
amount3: 15,
},
],
};
},
methods: {
handleSave(e) {
if (e.$index != 0) {
let inputPrice = e.row.price;
let row = e.$index - 1;
if (inputPrice
CO_co
Mybatis-Plus报错optimize this sql to a count sql has exception是为什么?
报错提示是SOL的解析异常:
${} 解析为SQL时,将形参变量的值直接取出,直接拼接显示在SQL中, "${ew.customSqlSegment}"需要加引号:
"'${ew.customSqlSegment}'" , 题干中没有说形参变量结构那么猜测"${ew.customSqlSegment}"这个可能应该这样:
"${customSqlSegment}", 并且出于安全与性能考虑,不建议使用"${}", 而是使用"#{}", "#{}"不用加引号
CO_co
springboot启动时加载外部jar?
java -classpath './libs*:main.jar' org.springframework.boot.loader.launch.JarLauncher
# or
java -cp './libs*:main.jar' org.springframework.boot.loader.launch.JarLauncher
使用 "-jar" 启动时,"-cp" 会被忽略。
因此只能将运行 jar 也放入 "-cp" 中,再使用 main 类启动。
spring boot 的 main 类,打包成 jar 时,会变为
"org.springframework.boot.loader.launch.JarLauncher"。
CO_co
怎么让页面识别转义字符?
{{ '111\n222' }}
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241012/1d96b8704bd0adb2eaea28541888c439.png)
"{{ /n }}" 文本插值在页面上不起作用
怎么让它在页面上换行? (除了用textarea以外)
CO_co
RocketMQ异常重试的时候,为何会触发相同群组的其他不同的Tag监听?
我一个springboot项目里,有2个相同主题相同群组,不同tag的监听。
为了测试异常重试机制,我在监听tagA的那个逻辑里,触发一个异常,希望RocketMQ可以重发异常到这个tagA监听里。
结果神奇的是,日志显示tagA逻辑触发了异常,接下来居然是tagB被触发了,但是我压根没发送过tagB的消息啊。。。。而且tabB的逻辑还一直被触发了多次。
另外,如果tagA的逻辑不触发异常,则tagB的监听不会被触发。RocketMQ也没改过什么,应该不是广播模式。
***
这是发送的代码
rocketMQTemplate.syncSend(g_mqTopic + ":tagA", "123");
这个是监听的逻辑
@RocketMQMessageListener(topic = "${my.mqTopic}", selectorExpression = "tagA", consumerGroup = "${my.mqTopic}-consumergroup1")
@RocketMQMessageListener(topic = "${my.mqTopic}", selectorExpression = "tagB", consumerGroup = "${my.mqTopic}-consumergroup1")
CO_co
如何在Vue中获取插槽内元素的Ref?
看了别的组件库,目前已经找到一种解决方案:
就是直接通过 "useSlots()" 获取插槽的 vNode,然后手动渲染,并绑定ref。
代码如下:
import {ref, useSlots} from 'vue'
const triggerRef = ref()
const floatingRef = ref()
const slots = useSlots()
const triggerArr = slots?.trigger?.()
// 获取vNode(真实场景,这一步需要校验插槽传过来的值。如果值是字符串或多个元素等情况,需要进一步处理)
const TriggerVNode = triggerArr[0]
~~但是这样有个缺点,WebStorm 写插槽的时候不会有提示,甚至有警告~~
更新
以上问题可以通过 Vue3.3 新增宏 "defineSlots()" 来解决,"defineSlots()" 用于定义插槽。
具体使用
"查看Vue文档" (https://link.segmentfault.com/?enc=lRF6ltrPEyWVGHhWSuoZFw%3D%3D.i%2FZi5ddWuvCESqW%2FfB6pcDLtDCTKDQGknutFL%2F6932%2FKyVG2eXj5%2BBYar9KQFpm%2FcsUfT%2BgfC%2BmVtlx%2BUsS7rA%3D%3D)
CO_co
求最好用的轮播js插件,主要是用于图片轮播,html块轮播?
求最好用的轮播js插件,主要是用于图片轮播,html块轮播
CO_co
java 都有虚拟线程了,那多线程在加虚拟线程并行岂不无敌?
三方库太多 目前很多库都没做兼容
CO_co
如何获取音频文件的音调信息?
对音乐不太懂,"tonejs" (https://link.segmentfault.com/?enc=9Qn9CCbCLsd%2Bb6W9%2B4Zlvw%3D%3D.KGxJ0bNpEZo8ZaaCzomUdc7rU5uE04iW5wopwxksV60%3D)这个库倒是可以提取很多信息。我写了个提取音频的"DEMO" (https://codepen.io/wzc570738205/pen/JjVYKod?editors=1010)你可以参考下
提取频谱信息后,将频率映射到音调( "C","C#","D","D#","E"...)
"DEMO地址" (https://codepen.io/wzc570738205/pen/JjVYKod?editors=1010),提示内存不足多刷新几次就能播放了
""image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241008/dfbf4d25ea2ffc1e8a50c948de3fc76b.png)" (https://codepen.io/wzc570738205/pen/JjVYKod?editors=1010)
CO_co
有道翻译逆向解析,为什么JS经过MD5返回类型和python经过MD5返回的类型不一样?
比如拿这个为例子:
decodeiv = "ydsecret://query/iv/C@lZe2YzHtZ2CYgaXKSVfsb7Y4QWHjITPPZ0nQp87fBeJ!Iv6v^6fvi2WN@bYpJ4"
* python的hash md5算法算出来的结果是:import hashlibres = hashlib.md5(decodeiv.encode('utf-8')).digest()b'\xd2\xbb\x1b\xfd\xe8;8\xc3D6cW\xb7\x9c\xae\x1c'
然后再进一步转换为16进制字符串
s_16 = res.hex() # 'd2bb1bfde83b38c344366357b79cae1c'
这里python的你可以进一步转化,不然字节形式的那个看着挺麻烦,不好比较python和js的。
* 你js的代码不知道怎么做md5的,我用了我的方式:
引用的这个在线库:
// 要进行哈希的字符串
const decodeiv = "ydsecret://query/iv/C@lZe2YzHtZ2CYgaXKSVfsb7Y4QWHjITPPZ0nQp87fBeJ!Iv6v^6fvi2WN@bYpJ4";
// 对字符串进行 MD5 哈希
const result = CryptoJS.MD5(decodeiv);
// 输出哈希后的字符串
console.log(result.toString(), "-------------");
// d2bb1bfde83b38c344366357b79cae1c -------------
可以看到二者的md5输出字符串是一样的啊。都是 "d2bb1bfde83b38c344366357b79cae1c",并无二致。
CO_co
如何解决 su 命令导致的环境变量丢失问题?
"su - oracle -c "echo $ORACLE_HOME""
用双引号(""echo $ORACLE_HOME"")的话,环境变量会在 su 执行之前被替换,所以它被替换成了当前用户的 ORACLE_HOME 。
换成单引号 "'echo $ORACLE_HOME'" 试一下。
CO_co
windows下pip安装onnx编译出错,cmake编译 文件名或扩展名太长,求解?
windows下pip安装onnx编译出错,cmake编译 文件名或扩展名太长
求解决方法
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241008/a5e336ea586350475fc4c148fa174b66.png)
CO_co
yarn 安装 qmarkdown 报 yarn 网络错误?
不应该是"yarn add @quasar/quasar-ui-qmarkdown"吗?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241006/9eef7e6bc2f637f689169c7d46f15133.png)
还有淘宝源更新了,现在为:"https://registry.npmmirror.com/"
CO_co
如何找回XP系统中通过代码隐藏的文件?
先用 "dir /x" 查询文件的短名称
再用 ren 修改文件名称
attrib 可以设置系统隐藏属性, 可以不用
CO_co
求推荐一本C++的,多线程,并发有关的书籍,名著之类的?
求推荐一本C++的,多线程,并发有关的知识的书籍,名著之类的.
面试的时候似乎对这方面的知识的把握要求很高...我不知道背一个线程池的代码能不能管用.
CO_co
SpringBoot项目运行错误:找不到CourseMapper Bean,文件存在,路径也正确,还会是什么原因导致的呢?
"这是我的目录" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241003/e83f794ebdc3ca10ec81a4cb4601d8dd.png)
Description:
Field courseMapper in com.ztt.bootest.service.impl.CourseServiceImpl required a bean of type 'com.ztt.bootest.mapper.CourseMapper' that could not be found.
The injection point has the following annotations:
- @org.springframework.beans.factory.annotation.Autowired(required=true)
Action:
Consider defining a bean of type 'com.ztt.bootest.mapper.CourseMapper' in your configuration.
以上是我的报错信息,
这是我的xml
spring.application.name=BootTest
server.port=8082
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/ktp_db?autoReconnect=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=123456
mybatis.mapper-locations=classpath:mapper/*Mapper.xml
mybatis.type-aliases-package=com.ztt.bootest.entity
spring.thymeleaf.check-template=false
spring.thymeleaf.check-template-location=false
mybatis.configuration.map-underscore-to-camel-case=true
这是我的application.properties
这是我自写的一个MyBatis+SpringBoot项目,不知道为什么运行不了,csdn上面的方法我试过了,都解决不了,总感觉是自己哪步比较关键的步骤弄错了,但是自己发现不了
希望哪位大佬帮我发现一下我的错误
CO_co
micropython怎么导入当前文件夹下的包?
需要导入的包也需要上到 micropython 单片机上,和你的主代码文件 同一级目录。一般集成工具会上传你的主代码,其他的需要手动单独上传一下