老詹啊老詹
vue 自定义指令控制元素的显示隐藏,切换路由,刷新页面,添加指令的元素全部消失了?
应该是业务逻辑问题吧,看你的指令代码就是到 btnPermissionList
里面找界面的权限数组,然后再去界面的权限数组里面找按钮的权限,你可以在指令中调试试试,看看
"formatPath","hasPermission"的值以及是否可以从"hasPermission"中找出对应的按钮权限,如果找不到那确实是符合期望的,就不应该显示。
老詹啊老詹
codepen使用 babel环境后,怎样提取成单独的html文件?
点击 “View Compiled JS”,然后将编译后的 JS 复制到 "" 中。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250111/c38607ef8fcbd4886a98cc55dd5e60e1.png)
老詹啊老詹
抓包魅族社区发现里面有段数据需要Json按规则转html,请教各位如何实现?
哈哈哈哈,确实啊,你这都有密码本了。
本来我猜的是
1. c 是 content,
2. t 是 type,
3. "t: "p"" 表示这应用 p 标签
看来猜的不太对
***
你直接遍历,然后渲染就得了,对于字符串的value,看着只有t需要用map转义一下
老詹啊老詹
低代码的页面渲染器是怎样实现的?
"低代码(零代码)平台整体架构设计点?" (https://segmentfault.com/q/1010000044155004/a-1020000044156105)
老詹啊老詹
这个mybatis的@Select自己写sql还会被侵入怎么办?
这种mapper里自己写的sql,我以为mybatis-plus不会侵入了,谁知还是被侵入了,运行时自动给我添加了个条件
@Mapper
public interface MyMapper extends BaseMapperX {
@Select({"select * from system_users where 1=1 and deleted = 0 and username = #{username} limit 1"})
List getUser(@Param("username") String username);
}
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241231/0e404c32d8bd718537b53313b3b1cf6f.png)
请问大佬们,mybatis-pluse 下 怎么做自己的sql才不会被侵入
老詹啊老詹
模2运算的除法具体步骤是怎么样的?
比如知道运算规则了,还是不清楚具体计算步骤。
老詹啊老詹
vue2里用的jsx里出现一个问题?
历史问题了,文档有缺失,详细的jsx语法看"https://github.com/vuejs/babel-plugin-transform-vue-jsx" (https://link.segmentfault.com/?enc=Crd8MJ%2FkyOWCN3%2BLsERpyQ%3D%3D.3EQTPSMGPWBbUC1B5zBiCrydttNtcy4EoridQQqiemUUFWLSEgLusl5xecwDYrMQsFvoC3g5QZtRur7h6qqPVw%3D%3D)
老詹啊老詹
mongodb 数组怎么动态追加?
例如现有数据结构:
{
id: 'a:0',
msg: []
}
"msg"数组长度最大为"10",超出的时候,新建"id='a:1'"后再向"msg"追加数据
老詹啊老詹
tsconfig.vitest.json 如何正确配置?
«"https://www.typescriptlang.org/docs/handbook/module-> resolutio..." (https://link.segmentfault.com/?enc=UP3%2BNSmzBApqO%2BVKdaqDNQ%3D%3D.1H0YLjo5jd5xxQiaOnLlhZudYEvPLs8Fp0q6O09hClRfzVBRuG71BHlGDUGTGtCsrZRVnfRMaVmk%2BcqqJAI30hJbeKh0CbKdZUKlHyM5G2ac0PygTURpvXjmL36FmqBt%2F8NoKyP3zt0XIrqWfO529A%3D%3D)Note: "node" module resolution is the most-commonly used in the TypeScript
community and is recommended for most projects. If you are having resolution
problems with "imports" and "exports" in TypeScript, try setting
"moduleResolution: "node"" to see if it fixes the issue.»
这个值是决定如何解析模块的,对于普通的导入导出没什么影响,但一旦你导入的包的 "package.json" 有 "exports"
这个字段的设置,就会有一些奇怪的表现。
一般来说不需要特殊设置,沿用默认值就可以了(默认值是什么由 Node 版本、TS 版本和 "module" 参数设定综合决定)。
TS v5.x 之后的话这个值建议设置成 "bundler",这也是默认值。
但说实话,无论设置成哪个值,我都没有复现出来题主截图中的错误(会有其他错误)。如果题主能提供一下环境信息(Node 版本、TS 版本、VSCode
版本、Vite 版本等等)是最好的了。
老詹啊老詹
我想问问有没有java实现OPC DA Server的方法或者SDK?
找了一圈,用Utgard 的库来实现 OPC DA 服务器,可以看看项目:
"springboot-opc-Utgard" (https://link.segmentfault.com/?enc=c0agPqDJUgWS1KdA0Oubgg%3D%3D.yNTOdCsCAvSAA2T%2FH6KATHP8ENdSS7iNwom2w%2Friondq0V6GTJnIgmNk4jNkP2wnMht7Bk4MAk%2FJfPWIL9lKDg%3D%3D)
"企业微信截图_16958698559190.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241219/8d84f158f672b006f7ccc848430b5faa.png)
老詹啊老詹
泛型数组 @SafeVarargs 怎么使用?
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[] args) {
List arr = asList("one", "two", "three");
System.out.println(arr);
List firstTwo = pickTwo("one", "two", "three");
System.out.println(firstTwo);
}
static List pickTwo(K k1, K k2, K k3) {
return asList(k1, k2);
}
@SafeVarargs
static List asList(T... objs) {
return new ArrayList(Arrays.asList(objs));
}
}
老詹啊老詹
vue3中使用requsetAnimationFrame报错is not defined?
"requestAnimationFrame"拼写错了。
老詹啊老詹
go的包中`var _ io.ReadCloser = (*A)(nil)`有什么作用?
我找原因了: 为了编译器在编译期间进行断言
,GO编译期间会进行死码消除,这种代码不会对正式环境造成影响,但是可以在编译期间检查出我们要实现某些接口时候,如果没有实现的问题。因为GO的interface实现不是强制性检测;
具体可以看:"interface-合理性验证" (https://link.segmentfault.com/?enc=7JRBmyCWtAu%2Fm01jyUGwMw%3D%3D.EEpuhw0oj0Sab9t4WlwZSVokiRbR8eIzLWYghj%2BHrsJco3r27r76Q1dYZF9%2BTNV%2FmUqIQP7hHmyghyEkLxNZ%2FU53eFzZJWFsVmFeItAiBRPt8cxaldMV8v5uwCsDZoub3aZlkToegjGIRpETcQbs1g%3D%3D)
老詹啊老詹
如何解决二分类问题中,高精度低召回率问题?
在二分类问题中,高精度低召回率问题通常表示模型在正确预测正类别的样本方面表现良好,但会错过很多实际正类别的样本。这可能是因为模型更加保守,更倾向于不做出正类别的预测,以确保准确性。解决高精度低召回率问题的方法包括以下几个方面:
1. 调整分类阈值 :默认情况下,分类器通常使用0.5作为分类的阈值。通过降低阈值,你可以使分类器更倾向于将样本归为正类别,从而提高召回率。但这可能会降低精确度。选择合适的阈值需要根据具体问题和业务需求进行权衡。
2. 使用不平衡数据处理技巧 :如果你的数据集是不平衡的,即正类别和负类别的样本数量差异很大,你可以考虑使用过采样(增加正样本)、欠采样(减少负样本)或生成合成样本的方法,以改善模型对正类别的预测性能。
3. 特征工程 :仔细考虑特征工程,选择更有助于提高召回率的特征。有时,引入新的特征或者变换现有特征可以提高模型的性能。
4. 选择适当的算法 :某些机器学习算法在处理不平衡数据和高召回率问题方面可能更加有效,例如随机森林、梯度提升树和支持向量机。不同算法在不同问题上的表现可能会有所不同,因此你可以尝试多种算法来找到最适合的。
5. 重点关注代价敏感学习 :代价敏感学习是一种专注于不同类型错误的机器学习方法。你可以调整算法的代价矩阵,以便更关注降低漏报(False Negatives)的代价。
6. 交叉验证 :使用交叉验证来评估模型的性能,确保模型在不同数据子集上都有较好的召回率。这可以帮助你避免过拟合或欠拟合问题。
7. 模型集成 :考虑使用集成方法,如投票、堆叠等,结合多个模型,以综合它们的预测结果,从而提高召回率。
8. 收集更多数据 :如果可能的话,增加数据量可以帮助模型更好地学习不同类别之间的模式。
解决高精度低召回率问题需要综合考虑数据特点、问题背景和模型选择,根据具体情况采取合适的方法。不同问题可能需要不同的策略,因此需要进行反复实验和调整以找到最佳解决方案。
老詹啊老詹
arco design中table表格的复选框怎么拿到选中行的数据?
去组件库找了挺久也没找到怎么拿到,我只能拿到选中的true或false
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241201/07efc0a8a95154431194410dab496063.png)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241201/1bcf9a869307430aee7aa7eef6e68f48.png)
老詹啊老詹
TS2322 可以使用约束 "number" 的其他子类型实例化 "T"?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241201/3c3211ef37661af459b462188ec3e626.png)
如图,问题出在哪?
老詹啊老詹
android 单选框如何动态渲染?
"android" 的 "RadioGroup" 是通过 "RadioButton"的 "id" 来实现单选:
如果枚举是从服务端获取并且枚举随时可增加、减少,就需要动态渲染,通过编程方式动态往 "RadioGroup" 新增、减少 "RadioButton"
是一个方法,但感觉太繁琐了。用 "RecyclerView" 又会导致 "RadioButton" 的单选特性无效,需自行维护单选效果。
请问这种业务场景一般怎么实现?
老詹啊老詹
amh面板 7.1测试版 安装Lngx出现报错?
lngx在新版本没兼容,这个amh7.1已经有计划安排更新的了。
这几天会提供更新,到时在面板上升级lngx环境软件就好。
老詹啊老詹
怎么实现上面输入框输入内容,下面输入框同时输入上面的内容?
使用 "computed()" 合并三者即可:
import { ref, computed } from 'vue'
const province = ref('')
const city = ref('')
const district = ref('')
const address = computed(()=> [province.value, city.value, district.value].join(' '))
实例:"playground" (https://link.segmentfault.com/?enc=AdYAK8RdZqqACpcwIVKA7w%3D%3D.TfsniY3gUKfT%2B6y91jgqwNY5DriGJ41ej%2FGWz0IaDFnMqw13aW0TsIZ6GGAl8SkK30OTBFYGVSRHql2oDmncBjb4PHJsuBF8YkCSdraP2o6mABz8OOOEL4JdWFso%2B3VGpw%2Bsxj1jGrzwzPLAEtWjnr3vINmO1NoKoZFA7EAK8izLoAgtGB6S6Y8cxoAnMdoosMRH%2F%2FXayhS4qHeVyjjYgUtViLSnO9MFaHWsSCNvc8f9e8UeVUWZC7bbE0TB9HHcK6XpFHpFZkGyerwdYH2QDzsd6gVCdPqTu7G9LDYW%2BfD4z7wPLfyv6fEMl%2F7dj5299y7cudcpgSGg0dO6V2JqCKzE0r27BYA1e7r7C7OvHsJJmDFQbgdqNNgimMbHv0OuKYVi%2FkwoemSGX5mgulLf3KECiRiBnSOP73HIhepAO76KR1Ib4XcOsvYJFcR5F1VdSdVtN%2Bc9dKlKeD3g5toDO8amyyxPa3%2BtkOHX%2FgdcyjYTQRPTnyRnuoPAwS9KBa3VxAS%2FsAFMr8lxEi3nvk%2B9L0ATab6H2NggNZ0k1sG09%2B7G7wPTyivQhshggjmTvkcz2L6WKTUrMQgPK3p9RpWroaAVbCqR13XsJSVkcM47iZEPwEL4hulOmpLzy%2FB6SOhj966FK6yiBROthnWBZDZ0DQLib6fH%2FWKpeYBui7e%2FnLcbZ9YKLt2zQXN911Dv%2B60zDZLruhUMvGeHgmQ%2F5MaGJSkToCswTmCunWgLJJis2z3qbtNuEMiZimOfMObqZzh1I0ilAzS6CMHCBL9ywRhvlg%3D%3D)
老詹啊老詹
vue3 模板语法?
首先value是响应式数据,下面的写法,value更新会触发template的更新,而上面的写法,api不是一个响应式数据,value的改变不会通知到template,让组件进行更新,可以使用watch或computed等
老詹啊老詹
webpack可以结合node express使用吗?
如果一个前端代码,使用webpack可以
1. 设置路径别名 比如src可以用@代替
2. 使用import 引用
3. 兼容各种文件名 .js .jsx .ts等等
而后端node express的项目就没听说有人用webpack,我知道,以上的东西可以手动在node
express项目中进行设置,但是如果有一个类似webpack的工具那就更好了。
请问有类似的工具吗,不想要一个一个找解决方案进行配置啊。就仅仅一个路径别名就找了很多方案,有的好用,有的不好用,很浪费时间。
感谢大佬的指点。
老詹啊老詹
对业务数据做日志应该如何实现?
如果你又日志采集器,其实可以直接使用日志的,但是如果就几张表,你直接弄专门的日志表也行,或者如果不存在查找具体修改内容,你可以弄个总操作日志表,修改直接记录成json就行,毕竟这样扩展也好,然后这种一般只是查找订单id来查找日志,不会根据具体内容查询,直接记录成json就行,不用额外安排表结构
老詹啊老詹
真好看,如图所示这是什么编码字体?
"https://pinia.web3doc.top/introduction.html#%E5%9F%BA%E6%9C%A..." (https://link.segmentfault.com/?enc=ACVLXN2BqihawYxJyil3hw%3D%3D.yRvxux6geoOnQG5X0G%2BXtTSzkHy4mCahpNdP31bFpu2lcspmjTFSvUeu98xvpaqoEUDrE7i9RF8%2FKPXiDg0Z0IkklA%2FPCpWvL05HFb1TX9f42%2FEQ%2BNLne5mnxDtJFrcm)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20241119/26ac2d4786b5660d062f773289459124.png)
老詹啊老詹
为什么小程序双向绑定会失效失效?
看一下小程序语法官网 双向绑定暂不支持a.b这种形式 只支持a,b这种
"https://developers.weixin.qq.com/miniprogram/dev/framework/view/two-way-bindings.html" (https://link.segmentfault.com/?enc=GYDJ7ZPOfYNjhym0rqofAw%3D%3D.ZaBShniPMbU3SB1nFpWI0oN57Yi2VpDomRZUjUmcUmUXq%2BWZoRPFSZTof7z81I%2F%2BGFsuxCtT6Q2Qx27NqrSckuBmfBer2bptiJwa1V8UZi3K3a3GYKZu%2BzI3C14helJF)
老詹啊老詹
sql server中exec sp_executesql 的使用问题?
DECLARE @doctype VARCHAR(64);
SELECT @doctype = oid FROM pdmdoctype WHERE name = 'BOM表';
DECLARE @sql NVARCHAR(1000);
SET @sql = '... where createtime >= ''' + @BeginTime + ''' and createtime <= ''' + @EndTime + ''' and version=1 ...';
老詹啊老詹
安卓+h5之间如何通讯?
"能传输基本类型(字符串,数字,Boolean)"
图片或其他复杂的数据通过 "编码" 转成 "字符串",接收方再对应 "解码",就可以了
不想自己整 "编解码",JSON 的库应该挺多的,图像转 "data uri" 应该也有很多现成代码
老詹啊老詹
如何设置 echarts grid3d 中心点 ?
«"https://echarts.apache.org/examples/zh/editor.html?c=bar3d-da..." (https://link.segmentfault.com/?enc=VCfXJK2WHq6RlIi4CkIUeg%3D%3D.mY2f78eE3BBgrIVCOX46tMJTnABRKxZc9r9aa5nk%2FB3JSE8OKbehYHv3T2M3PPxcOGUYWgjH0K0m0yHhVfv7hyDynGKYmAidjFAoThntyQId0hQ2cq83AdShwlfo18uZ1Z09RU6kBbDq9gWBBFqCTaSQgviMRnTWRhZj0ih4SqbBvHaRtDGpJ33GbkzqO89MLQc0l2t%2BRuobS2Y6NIftfjKKQ4X%2BkE9fa3%2FzSmgAfmJ5BHKBn31dKE3gB5OeY5wrkZQw5CViGZ1ADBlyTOkh9BQWHjctFwDujxlqEMRKQK0OiskbHXAzsqcfPhk2Acj7vD5rVZ8geyVZigQpuX9%2FW9tVs5kiyk7HO32eNKIhZJZruaR%2FS9tJxBuiU3jHGawPdUeBZMUtaXisNC%2F29yL8ESK3RXPgM52fX5T3jwbTA%2BP5wE78Q3E2CbVRlI%2FXqPFV3w58kLkXWgKoQ9gtcLPZERpOrokSZjz7J1QkFFeBYi8923Ux9DYRXI3O6eiwt9RBvBTKH3n9V2Imv5%2FjZg2JRQKWgSX8ZZAC9cg7M3qlvT4r75VEBAZlTHRE4ZDt1oE34%2BvEKwdgkqqKEu4ngcsKzRkAdsnKxT5%2FCpIFYZJ5XhFL9TEcjgmU1E%2B6X0UpAcisIIay%2BEY9yeIWCeZG0blVMiXYvD1R1OVnAPdJ4R%2FMMbjBihIIsUI2K3UCHJ7jucb2eB7BiqrKinfuLhUuLwQyJMoJGPXgm7nd6BNJrsORP1Cxjac8VwCX7XoaoTLZvNzs%2BgLueHhhJZ75m8RS0sR8xXUc7wLQQqw39WzJRJ96NmGto42vFPedf5Q3%2FD3pHFlnYCFmL2vdrehdg0KYJYHWGPLOXN0HtiHgY4HC48rzn7R7lDG6Xh8cCsySdS4Ze%2BjqPSDO3Xtn6gufl4l21k6rsJi6gTxkLjoLQaYN1VdLGf4tOg7UoWF4d5hAQ6QIPbetlFlA9QqfAuzAsAPUlaY6fj7xlvZD4Z%2BPrjCIERD7KEt95BFhfWUApWrmwQb%2FZIYzUrRi4U7aYPJvQkOcjJsf8Ct8aSmVCOZQov8GHS1q8hAOB0l2ov5VgV4hX1zKYXF%2B7JevWw%2BcRoW34badBJlSwXtNRNQSCJmCFny%2FAYurqQ0dnGmoTDLqxOtgLKwI71cBR9sgFEZXQoSmaef%2BeYe5NcfLSTEt38QLFgIGl%2B%2BKsPmYBM4lULrg%2B5ixiFzzev1Y2d4Vud3gj1XTWhsxO4l8pi0h9yPN0pw0uOXcQhhwiVRDwGSnAJ3HW%2BIHo0iheFm%2Fj5LOEbbmT%2FO%2F7qIil1mIHzq3SkvIK8s3lHcOonIkI2UE4N1krxc%2FVNllVUvDR3oIS%2BvZ%2FzByIRQ5u7HwpKWCTxYMVDdqP0dotuR2SKIhAfg%3D)»
grid3D: {
left: '0%', // 设置图表距离容器左侧的距离
top: '10%', // 设置图表距离容器顶部的距离
right: '10%', // 设置图表距离容器右侧的距离
bottom: '100%', // 设置图表距离容器底部的距离
viewControl: {
// center: [100, 0, 0, 0] // 设置视角中心点位置
}
},
grid3D: {
show: false,
boxHeight: 20,
viewControl: {
center: [100, 0, 0, 0], // 设置视角中心点位置
},
},
老詹啊老詹
win10设置界面的鼠标移动显示周边的样式(探照灯效果)该怎么实现呢?
"DEMO1:Windows 10 grid hover
effect" (https://codepen.io/jashgopani/pen/MWJzPzJ)
"DEMO2:Windows 10 calendar effect CSS" (https://codepen.io/gubb/pen/PdZqKy)
"DEMO3:Windows 10 calendar effect using
HTML,CSS,JS" (https://codepen.io/jashgopani/pen/abpXKLZ)
"教程 Windows 10 calendar hover effect using HTML, CSS, and vanilla
JS" (https://link.segmentfault.com/?enc=GbpRlFXFw8ddQCrjKeV%2BDA%3D%3D.j4bBZTjQ%2FCikGeevAp6smlVoTUv%2B7IPCACwhftmRXrr6bFSWNrQDVUb2PeGuRlfL9dCEcMd13tjoN6b8jCpDo3va5YCkTp8FxgoJIkNyLcm98qPCo4ALfatrxWUYEM97)
"教程 Windows 10 grid hover effect using HTML, CSS, and vanilla
JS" (https://link.segmentfault.com/?enc=3f6SC98VFfLaKCN%2FsRz%2FmA%3D%3D.cjC7RHjm9khPMbhDYshff%2BpGSno8qNyxTizZ63tNmeticaxv5d%2B087VRtad45Rl%2B9Wxea2JIvN2oPOy96WLgn16bmyTv9HVr8MeaSX1YKM6wuBZwEa2bSilNeNKzTf0t)
老詹啊老詹
scrapy 爬虫,始终获取不到数据,如何解决呢?
求助 scrapy 爬取数据失败,排查了好久都没有找到问题了,实在找不到了
目标:爬取欣欣旅游网的某一城市 各大景点的基本信息
这是我的 sipder 以及 item 代码
spider:
from scrapy import Request
from scrapy.spiders import Spider
from XXtourism.items import XxtourismItem
class TourismSpider(Spider):
name = "tourism"
# 初始请求
def start_requests(self):
url = "https://tianjin.cncn.com/jingdian/"
yield Request(url,dont_filter=True)
# 解析函数
def parse(self, response,*args,**kwargs):
spots_list = response.xpath('//div[@class="city_spots_list"]/ul/li')
for i in spots_list:
try:
#景点名称
name = i.xpath('./a/div[@class="title"]/b/text()').extract_first()
#景点简介
introduce = i.xpath('./div[@class="text_con"]/p/text()').extract_first()
item = XxtourismItem()
item["name"] = name
item["introduce"] = introduce
#生成详细页请求
url = i.xpath("./a/@href").extract_first()
yield Request(url,meta={"item":item},callback=self.pif_parse,dont_filter=True)
except:
pass
def pif_parse(self,response):
try:
address = response.xpath("//div[@class='type']/dl[1]/dd/text()").extract_first()
time = response.xpath("//div[@class='type']/dl[4]/dd/p/text()").extract_first()
ticket = response.xpath("//div[@class='type']/dl[5]/dd/p/text()").extract_first()
response.find_element_by_xpath("//div[@class='type']/dl[3]//dd/a/text()")
type = response.xpath("//div[@class='type']/dl[3]//dd/a/text()").extract_first()
if type:
type = type
else:
type = ' '
item = response.meta["item"]
item["address"] = address
item["time"] = time
item["ticket"] = ticket
item["type"] = type
yield item
# url = response.xpath("//div[@class='spots_info']/div[@class='type']/div[@class='introduce']/dd/a/@href").extract_first()
# yield Request(url,meta={"item":item},callback=self.fin_parse)
except:
type = ' '
# def fin_parse(self,response):
# try:
# traffic = response.xpath("//div[@class='type']/div[@class='top']/div[3]/text()").extract()
#
# item = response.meta["item"]
# item["traffic"] = traffic
#
# yield item
#
# except:
# pass
item:
# Define here the models for your scraped items
#
# See documentation in:
# https://docs.scrapy.org/en/latest/topics/items.html
import scrapy
class XxtourismItem(scrapy.Item):
# define the fields for your item here like:
# 景点名称
name = scrapy.Field()
# 景点地址
address = scrapy.Field()
# 景点简介
introduce = scrapy.Field()
# 景点类型
type = scrapy.Field()
# 开放时间
time = scrapy.Field()
# 门票概况
ticket = scrapy.Field()
# 交通概况
traffic = scrapy.Field()
这是执行日志:
PS D:\Python\XXtourism\XXtourism> scrapy crawl tourism -o tourism.csv
2023-12-20 18:16:56 [scrapy.utils.log] INFO: Scrapy 2.8.0 started (bot: XXtourism)
2023-12-20 18:16:56 [scrapy.utils.log] INFO: Versions: lxml 4.9.3.0, libxml2 2.10.4, cssselect 1.1.0, parsel 1.6.0, w3lib 1.21.0, Twisted 22.10.0, Python 3.9.18 (main, Sep 11 2023, 14:09:26) [MSC v.1916 64 bit (AMD64)], pyOpenSSL 23
.2.0 (OpenSSL 3.0.12 24 Oct 2023), cryptography 41.0.7, Platform Windows-10-10.0.19045-SP0
2023-12-20 18:16:56 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'XXtourism',
'COOKIES_ENABLED': False,
'DOWNLOAD_DELAY': 3,
'NEWSPIDER_MODULE': 'XXtourism.spiders',
'SPIDER_MODULES': ['XXtourism.spiders'],
'USER_AGENT': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 '
'(KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36'}
2023-12-20 18:16:56 [py.warnings] WARNING: D:\Ana\lib\site-packages\scrapy\utils\request.py:232: ScrapyDeprecationWarning: '2.6' is a deprecated value for the 'REQUEST_FINGERPRINTER_IMPLEMENTATION' setting.
It is also the default value. In other words, it is normal to get this warning if you have not defined a value for the 'REQUEST_FINGERPRINTER_IMPLEMENTATION' setting. This is so for backward compatibility reasons, but it will change
in a future version of Scrapy.
See the documentation of the 'REQUEST_FINGERPRINTER_IMPLEMENTATION' setting for information on how to handle this deprecation.
return cls(crawler)
2023-12-20 18:16:56 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.selectreactor.SelectReactor
2023-12-20 18:16:56 [scrapy.extensions.telnet] INFO: Telnet Password: c388126d14d4b80a
2023-12-20 18:16:56 [scrapy.middleware] INFO: Enabled extensions:
['scrapy.extensions.corestats.CoreStats',
'scrapy.extensions.telnet.TelnetConsole',
'scrapy.extensions.feedexport.FeedExporter',
'scrapy.extensions.logstats.LogStats']
2023-12-20 18:16:57 [scrapy.middleware] INFO: Enabled downloader middlewares:
['scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware',
'scrapy.downloadermiddlewares.downloadtimeout.DownloadTimeoutMiddleware',
'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware',
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware',
'scrapy.downloadermiddlewares.retry.RetryMiddleware',
'scrapy.downloadermiddlewares.redirect.MetaRefreshMiddleware',
'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware',
'scrapy.downloadermiddlewares.redirect.RedirectMiddleware',
'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware',
'scrapy.downloadermiddlewares.stats.DownloaderStats']
2023-12-20 18:16:57 [scrapy.middleware] INFO: Enabled spider middlewares:
['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware',
'scrapy.spidermiddlewares.offsite.OffsiteMiddleware',
'scrapy.spidermiddlewares.referer.RefererMiddleware',
'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware',
'scrapy.spidermiddlewares.depth.DepthMiddleware']
2023-12-20 18:16:57 [scrapy.middleware] INFO: Enabled item pipelines:
[]
2023-12-20 18:16:57 [scrapy.core.engine] INFO: Spider opened
2023-12-20 18:16:57 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2023-12-20 18:16:57 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
2023-12-20 18:16:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:17:01 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:05 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:10 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:13 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:18 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:21 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:25 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:28 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:32 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:36 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:40 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:45 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:49 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:53 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:17:57 [scrapy.extensions.logstats] INFO: Crawled 1 pages (at 1 pages/min), scraped 0 items (at 0 items/min)
2023-12-20 18:17:57 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:18:01 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:18:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:18:57 [scrapy.extensions.logstats] INFO: Crawled 16 pages (at 15 pages/min), scraped 0 items (at 0 items/min)
2023-12-20 18:19:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:19:03 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:19:06 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:19:10 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from
2023-12-20 18:19:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:19:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:19:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None)
2023-12-20 18:19:20 [scrapy.core.engine] INFO: Closing spider (finished)
2023-12-20 18:19:20 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 12810,
'downloader/request_count': 39,
'downloader/request_method_count/GET': 39,
'downloader/response_bytes': 151805,
'downloader/response_count': 39,
'downloader/response_status_count/200': 20,
'downloader/response_status_count/301': 19,
'elapsed_time_seconds': 142.80337,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2023, 12, 20, 10, 19, 20, 220207),
'httpcompression/response_bytes': 458357,
'httpcompression/response_count': 20,
'log_count/DEBUG': 40,
'log_count/INFO': 12,
'log_count/WARNING': 1,
'request_depth_max': 1,
'response_received_count': 20,
'scheduler/dequeued': 39,
'scheduler/dequeued/memory': 39,
'scheduler/enqueued': 39,
'scheduler/enqueued/memory': 39,
'start_time': datetime.datetime(2023, 12, 20, 10, 16, 57, 416837)}
2023-12-20 18:19:20 [scrapy.core.engine] INFO: Spider closed (finished)
跟着老师讲的一步一步来的,自己多爬取了几个信息(打开对应的详细网页进行爬取)
始终获取不到任何信息,301重定向错误也试了很多方法,但都没有解决 救救我吧 大佬们
老詹啊老詹
为什么我的这个netfilter的钩子函数抓不到端口号?
为什么我的这个netfilter的钩子函数抓不到端口号?
unsigned int hook_func(void *priv, struct sk_buff *skb, const struct nf_hook_state *state)
//这个函数是钩子函数.
//抓到包时会执行该函数.
//sk_buff是抓到的数据包.
//接受了3个参数,只有中间那个用到了.
{
struct iphdr*p=ip_hdr(skb);
if(p->protocol==6)
{
printk(KERN_INFO"TCP packet!");
printk(KERN_INFO"---len=%d",skb->len);
struct tcphdr*t=(struct tcphdr*)(skb->data+p->ihl*4);
u16 srcport=t->source,dstport=t->dest;
printk(KERN_INFO"---srcport=%hu,dstport=%hu",srcport,dstport);
}
return NF_ACCEPT; // accept the packet
//这里,钩子函数判定,接受该包.
}
钩子函数是这个,然后我用insmod把它加入内核,但端口号显示的并不是正确的.我开了几个网页,但它并没有出现类似80,443的端口号.我又开了2个终端,用netcat在本地的12345端口进行了几次通信,它还是没有显示12345?
老詹啊老詹
怎么学习java?
都能上这个网站注册了, 还能问出这个
那就答案 报个班
老詹啊老詹
css flex布局padding-right不起作用?
css flex布局"padding-right"不起作用
父元素
display: flex;
flex-direction: column;
align-content: flex-start;
flex-wrap: wrap;
gap: 5px;
width: 100vw;
height: 500px;
padding: 10px;
overflow: auto hidden;
box-sizing: border-box;
内部纵向排列,高度固定,超出横向滑动,"padding-right"不起作用
如何能使"padding-right"起作用
"image.png" (https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241023/d4d80c66a20eb462de00f3c63d117260.png)
老詹啊老詹
如何在 Element UI 的日期选择器中添加清空和确认按钮?
"https://blog.csdn.net/mai0824/article/details/122959917" (https://link.segmentfault.com/?enc=lYvCRMI9fnI0yCqqxiD1Aw%3D%3D.Uym1YR0amkuD%2BRPRlMeJNDhSMOo1JbZOJd7ZwiqCLNsMOHJ4RAzKgh6USO1tZYdmPZy7b06GknxfRXBXPaQ6WA%3D%3D)
你可以看看这篇文章
"1704691640316.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241016/1e3fcd7ac4d2335d289e93c6a75b0a30.png)
老詹啊老詹
Flask读取MySQL数据库中的图片并返回给前端的步骤?
flask如何读取mysql数据库中的图片,并返回给前端呢?
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241016/99ec353938722995d00dd639197f0ade.png)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241016/54cc53b440e5c57efd6313fb9687ecc0.png)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241016/692d9f940b740b8288870a83db3b9725.png)
得到提供的思路 前端该如何请求 还有服务器需要怎么样返回
老詹啊老詹
原型和原型对象到底指的是什么?它们是一样的吗?
原型和原型对象到底指的是什么?
看到一些描述里,又有原型一词,又有原型对象一词(可以查看我的另一个"问题" (https://segmentfault.com/q/1010000044547471?_ea=335044064),就同时遇到了这两个词)。
* 这两者分别是指谁?还是一样的意思呢?
* 是函数里面经常提到的"prototype"还是在原型链中经常提到的"[[Prototype]]"?
* 还是没有明确的规定只是个人的随意起了名字?
今天在看babel的"文档" (https://link.segmentfault.com/?enc=8kDRnfO4l%2BRb6qNQtcNurQ%3D%3D.7%2BrtUeOlk%2F%2FxEA0raYtP5%2FsPWsZPOTNXKT1WShI9StgIDTUeXLzfA0gtoG41Yaus)时又遇到了"原型对象"一词,根据上下文看,这里的"原型对象"说的应该是"prototype"而不是"[[Prototype]]"
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/46af764fbbab1f6c5c9ede710ade30fa.png)
顺便说一下这里的翻译:
* "内置对象"改为"内置函数"更合适一吧。当然函数也是个对象。
* "添加对象"应该是"添加属性"吧
附"英文原文" (https://link.segmentfault.com/?enc=KuqMDPAVEqwXVGtOxTGVDQ%3D%3D.%2BbxIz95tCNMv5mkjEUG9cbzoD576IIcpmrWjiiPY%2BYw%3D)
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/3fe2d0c239733260c6fe553208c2a606.png)
老詹啊老詹
vue hooks怎么返回异步数据到template?
问题
vue hooks怎么返回异步数据到template?
代码
hooks
import { reactive } from 'vue'
import axios from 'axios'
export default function () {
let tableData = reactive()
const getData = async () => {
const res = await axios.get('https://cnodejs.org/api/v1/topics')
tableData = res.data.data
console.log('tableData', tableData)
}
return { tableData, getData }
}
组件
import { onMounted } from 'vue'
import useTable from '../../hooks/useTable'
const { tableData, getData } = useTable()
onMounted(async () => {
await getData()
})
数据返回了,但是没有显示在template上
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241015/1430fd6868730aac5fed97309bfdbd38.png)
老詹啊老詹
微信小程序支持多个账户提现吗?
场景:假如我有个商城,有多家商户入驻我的商城。在我的商城后台,这些商户有各自的帐号看自己销售额,然后他们可以在这个后台提现他们自己的收益么?
老詹啊老詹
java工程调试如何定位到调用者(基础问题)?
enable里面
"registerCache.invalidate(key);"将该缓存置为无效(移除)。缓存中有个"removalListener"监听,当移除缓存时,回调"onRemoval",然后执行"userMapper.delete"
***
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.mooc.house.biz.mapper.UserMapper.delete
at com.mooc.house.biz.service.MailService$1.onRemoval(MailService.java:34) ~[classes/:?]
at com.mooc.house.biz.service.MailService.enable(MailService.java:81) [classes/:?]
at com.mooc.house.biz.service.MailService$$FastClassBySpringCGLIB$$330c1391.invoke() [classes/:?]
at com.mooc.house.biz.service.MailService$$EnhancerBySpringCGLIB$$f5d46d61.enable() [classes/:?]
at com.mooc.house.biz.service.UserService.enable(UserService.java:100) [classes/:?]
at com.mooc.house.biz.service.UserService$$FastClassBySpringCGLIB$$2590eefd.invoke() [classes/:?]
at com.mooc.house.biz.service.UserService$$EnhancerBySpringCGLIB$$2fa75e41.enable() [classes/:?]
at com.mooc.house.web.controller.UserController.verify(UserController.java:47) [classes/:?]
at com.mooc.house.web.filter.LogFilter.doFilter(LogFilter.java:28) [classes/:?]
老詹啊老詹
请问 nestjs 有类似 mycat 的分布式数据库中间件么?
这个你直接使用就行了,不需要非要使用nodejs语言开发的,他就想mysql一样,他只是中间件,不管你调用的是什么语言
老詹啊老詹
如何设置input高度很高,但是文字居于底部?
如何设置input高度很高,但是文字居于底部
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241013/1afc2ed3865f917b14b43af5d868196d.png)
现在文字是居于中间的,如何居于底部?除了使用padding还有什么方法?
Document
input {
height: 60px;
}
老詹啊老詹
前端只发起了一次请求为什么后端会收到两次?
有可能是浏览器的重试机制,也有可能是nginx的重试机制。
排查就是就是每一层加个唯一id。
比如说前端发起的时候加个 "uuid: Math.random()",这样就可以判断是谁发起了多次。
当然也得关注是不是触发了 option 预检请求,出现在跨域时
***
如果上述你都已经查完了,接下来就是看日志了。比如说 nginx 的 access_log 加上 grep 过滤去找。
也可以试着修改 Nginx 的重试机制。在 Nginx 配置中找到相关的配置项,可能是 proxy_next_upstream 或 proxy_retry
相关的配置。
***
或许这个是你想要的?
"https://stackoverflow.com/questions/15155014/inconsistent-browser-retry-behaviour-for-timed-out-post-requests" (https://link.segmentfault.com/?enc=zi5MfjH%2F%2BH0xtkKttpqHqg%3D%3D.Ph2qWu%2B3MDeAZJvwhl%2BaJFnh2UuVmJnHOgJ5sE73wvukE3N8EP3sPW8y1Cacj0Y2Qm2%2FT%2BO%2F58pmxr%2FkI%2BbiEm47bmTuvjgeB3vHAwh3%2BYNRQ5YTYsjOamw%2F9nGIYwjeI%2Fvw2mlGaxfYQwUXYShAzQ%3D%3D)
更多相关的内容:"https://stackoverflow.com/search?q=chrome+request+retry&s=f8018be9-1a56-4af7-9f42-7125dbc6744e&s=db4e609e-9b53-40d0-a2da-18edeb0d50cb" (https://link.segmentfault.com/?enc=9ertE0VJo1W4KZusVDEPNg%3D%3D.rPHNT7jqlXPI4sQyGcdfre5xXPkwau6JwC7ot%2FuyefBMz4upFzPiip4%2BY%2BwRpSE5cARMA5PeKkR3K3b%2BXNOn7vYlpEnnx7df3n9ru7RN1mBl6PIkKnF1Tsnpwe1Xnnm6X6p530pscVgPSng%2F5%2FaIDleVrrWsF5srG9AuqpJIur6MAohwxP4HoGgEbyvFIxb4)
老詹啊老詹
vue3组件的click和change的顺序怎么自己控制 ?
DOM 事件的顺序是 Web 规范规定的,和 Vue 无关。所以你的事件处理函数必须遵守相应的规范,才能正确处理。
不过自定义组件的事件顺序是组件代码决定的,但是一般来说也是固定的。
所以你只能选择遵守别人的顺序,不能自己控制。
老詹啊老詹
跪求!!!!请帮忙解决opendkim服务无法启动的问题?
opendkim使用命令systemctl restart opendkim后,使用systemctl status opendkim查看后
[root@92d7446911bd etc]# systemctl status -l opendkim
● opendkim.service - DomainKeys Identified Mail (DKIM) Milter
Loaded: loaded (/usr/lib/systemd/system/opendkim.service; enabled; vendor preset: disabled)
Active: inactive (dead) since Tue 2024-01-02 05:59:19 UTC; 11min ago
Docs: man:opendkim(8)
man:opendkim.conf(5)
man:opendkim-genkey(8)
man:opendkim-genzone(8)
man:opendkim-testadsp(8)
man:opendkim-testkey
http://www.opendkim.org/docs.html
Process: 579 ExecStart=/usr/sbin/opendkim $OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 579 (code=exited, status=0/SUCCESS)
Jan 02 05:59:19 92d7446911bd systemd[1]: Started DomainKeys Identified Mail (DKIM) Milter.
。发先opendkim状态时dead状态。不管我试多少次,就是还是这个样子
使用postfix发送邮件后
Jan 2 06:29:50 92d7446911bd postfix/smtpd[693]: warning: connect to Milter service inet:localhost:8891: Connection refused
提示也是这样的。
我也查了很多资料,但基本都是说没启动,但我使用了systemctl stop/start/restart opendkim我都试过了,还是这样。
跪求大神们,帮帮忙。
老詹啊老詹
微信小程序,复制功能怎么写?
你尝试清除了缓存和删除小程序,重新扫码试试
老詹啊老詹
关于元素背景图的平移和缩放如何处理?
问题解决
Document
* {
margin: 0;
padding: 0;
}
body {
overflow: hidden;
}
.box {
width: 600px;
margin: 50px;
height: 600px;
border: 1px solid #000;
user-select: none;
color: #fff;
overflow: hidden;
position: relative;
}
img {
width: 100%;
user-select: none;
-webkit-user-drag: none;
pointer-events: none;
}
let box = document.querySelector('.box');
let img = document.querySelector('img');
let isDown = false;
let downx = 0;
let downy = 0;
let position = {
x: 0,
y: 0
}
let scale = 1;
box.addEventListener('mousewheel', function (event) {
event.stopPropagation()
event.preventDefault()
let rec = img.getBoundingClientRect();
let x = (event.clientX - rec.x) / scale;
let y = (event.clientY - rec.y) / scale;
let delta = (event.wheelDelta ? event.wheelDelta : -event.deltaY);
let ls = scale // keep last scale
scale = (delta > 0) ? (scale + 0.2) : (scale - 0.2);
if (scale > 3 || scale 0) ? 0.1 : -0.1;
let x1 = (-x * m * 2) + (img.offsetWidth * m);
let y1 = (-y * m * 2) + (img.offsetHeight * m);
position.x += x1
position.y += y1
updateTransform()
}, { passive: false });
box.addEventListener('mousedown', function (e) {
isDown = true;
downx = e.clientX - position.x;
downy = e.clientY - position.y;
});
document.addEventListener('mousemove', function (e) {
if (isDown) {
position.x = e.clientX - downx
position.y = e.clientY - downy
updateTransform()
}
});
box.addEventListener('mouseup', function (e) {
isDown = false;
});
function updateTransform() {
img.style.transform = `scale(${scale}) translate(${position.x / scale}px, ${position.y / scale}px)`;
}
老詹啊老詹
有什么工具能把 js 字符串的链式访问符 转换成 es5 形式?
找到了这个 "@babel/standalone"
"https://babeljs.io/docs/babel-standalone" (https://link.segmentfault.com/?enc=R70zuqbs1kRkJvnWEj0dYQ%3D%3D.vJfUxEcXOE4VkcxjJg3k3tb7%2FeDnpCtbKCITK7uSg4cSeMKAcLDHLVv2uMem1Kvy)
老詹啊老詹
如何匹配父组件与子组件的数据表格以实现选中状态回显?
如何将父组件传来的数据表格和子组件的表格数据匹配,用于回显选中的状态?
下面这个是父组件,是个弹窗
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/83b393acf14acb3f037344b204551653.png)
下面这个是子组件
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/3bfbd1d1f1abb70e506b50c71c399213.png)
点击选择清单的时候出现子组件弹窗,就是吧父组件显示的这个数据传给子组件,子组件接收后和子组件里面的表格匹配,有的话就回显父组件显示的那条数据
这个是父组件引入了子组件
:listData="data" data就是父组件显示的表格数据
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/52440ad5924e03fac503e7fecb606492.png)
下面是子组件接收和mounted。这个项目是刚接手的
感觉是"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241005/a736671824b543e7b1b66e29f8d52999.png)这些代码去做的回显
{
return {
on: {
click: event => onRowClick(record)
}
};
}
"
:scroll="{ x: 1500, y: 300 }"
:pagination="pagination"
rowKey="id"
:columns="columns"
:data-source="data"
>
props: ['listData', 'contractId'],
mounted() {
this.getData();
let newData = JSON.parse(JSON.stringify(this.listData));
newData.forEach(item => {
if (item.productId) {
item.id = item.productId
}
})
this.selectDatas = newData.filter(item => item.id != undefined);
newData.forEach(element => {
if (element.id) {
this.selectedRowKeys.push(element.id);
}
});
},
而且父组件传过来的id和子组件显示的表格数据id都是不一样,请问这样的话应该怎么处理呢,要是按照产品名称,型号,品牌这些字段去匹配呢?这些字段的值有的是相同的,这样应该怎么去写呢,求回答!求回答!
尝试使用那些字段去拿好像不太对劲
老詹啊老詹
如何配置Docker使用国内镜像源加速,才能生效?
阿里云的那个源本来就很慢,加上你要拉取的镜像很大。。。
"image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/15cc6e1c15c48c59b3c35332b4f2c44d.png)
怎么判断镜像源是不是生效了,可以打开docker的debug日志,然后pull镜像的时候看看日志,就知道是不是走了镜像源了。如果你看到日志里面是走了代理的地址拉取的镜像,还是慢,那就是镜像本身速度就很慢。
{
"log-level": "debug",
"registry-mirrors": ["https://xxx1.com","https://xxx2.com"]
}
基本上现在国内没几个能用的镜像源了,要么也很慢,要么停止服务了。
我建议你有条件的话,配个代理,从代理下可能都比镜像快,我已经很久没用配过镜像了。
老詹啊老詹
为什么我的ruby会有多个路径/版本?
现在都推荐使用rbenv + ruby_build
老詹啊老詹
如何在Umi后台实现页面跳转时保持语言参数一致?
这种只能将国际化的标识放到url里面,如:
www.test.com/zh/newsList 或者:
www.test.com/newsList?locale=zh,
然后每次项目加载的时候读取url里面的国际化标识信息进行国际化设置。