<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[水平有限，凑合看]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/z2823930772</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; z2823930772]]></copyright><item><title><![CDATA[langchain结构化输出的四种类型]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/161010651</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/161010651</guid><author>z2823930772</author><pubDate>Tue, 12 May 2026 11:23:48 +0800</pubDate><description><![CDATA[langchain的结构化]]></description><category></category></item><item><title><![CDATA[启动项目 Permission denied]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/144182555</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/144182555</guid><author>z2823930772</author><pubDate>Mon, 02 Dec 2024 10:58:18 +0800</pubDate><description><![CDATA[新的项目开发，第一次启动vue项目（MAC），报错Permission denied，没有权限。打开终端，输入linux命令sudo chmod -R 777 （当前文件名）不知道为啥会出现这个问题，应该是没有访问文件的权限。给当前文件进行权限设置就可以启动。]]></description><category></category></item><item><title><![CDATA[项目打包后跳转页面报错…… （缓存问题）……]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/142175111</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/142175111</guid><author>z2823930772</author><pubDate>Thu, 12 Sep 2024 14:43:03 +0800</pubDate><description><![CDATA[每次打包后，切换这个页面就会出现这个错误，刷新一下就会好了，怀疑是缓存问题，找到各种解决方法都是解决缓存的问题，但是缓存还是必须加的。后面总结了，发现我报错的页面，都是跳转的新开的页面，与之前的项目相比，在单页面切换，就算有缓存的话，不会报错，这个是等于开了个新的标签地址，然后切换的时候访问又是老的资源……，所以就出现了这种报错……之前一直做toB的项目，基本上都是管理后台，然后也用了react获取vue都是单页面spa都是一个html入口，打包后缓存很正常，但是没遇到过切页面报这个错……]]></description><category></category></item><item><title><![CDATA[前端缓存页面处理方法]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/142054223</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/142054223</guid><author>z2823930772</author><pubDate>Mon, 09 Sep 2024 11:26:02 +0800</pubDate><description><![CDATA[通常我们希望在应用发布后，浏览器能够加载最新的资源文件，而不是从缓存中读取过时的内容。可以为 HTML 文件设置较短的缓存时间，而为带有文件指纹的静态资源（如 CSS、JS）设置较长的缓存时间。每次发布新版本时，生成的资源文件名中的哈希值会改变，这样就避免了加载旧的缓存文件。• 文件指纹 是最简单且广泛使用的解决方案，与服务器的 Cache-Control 设置结合，可以很好地控制缓存问题。• CSS/JS 文件（带有指纹）：可以设置较长的缓存时间，因为文件名会变更，确保用户不会下载旧版本。]]></description><category></category></item><item><title><![CDATA[获取数组中下标为[0, 3, 4, 7, 8, 11, 12]的数据（瀑布流的数据）]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/141535754</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/141535754</guid><author>z2823930772</author><pubDate>Sun, 25 Aug 2024 21:52:29 +0800</pubDate><description><![CDATA[【代码】获取数组中下标为[0, 3, 4, 7, 8, 11, 12]的数据（瀑布流的数据）]]></description><category></category></item><item><title><![CDATA[css实现瀑布流]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/141533976</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/141533976</guid><author>z2823930772</author><pubDate>Sun, 25 Aug 2024 20:07:53 +0800</pubDate><description><![CDATA[【代码】css实现瀑布流。]]></description><category></category></item><item><title><![CDATA[antd的select的defaultValue通过form.getFieldsValue获取不到]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/139648501</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/139648501</guid><author>z2823930772</author><pubDate>Thu, 13 Jun 2024 10:54:16 +0800</pubDate><description><![CDATA[如果你希望在组件挂载后立即获取表单字段的值，可以在组件的。：如果你的默认值是异步获取的，确保在设置默认值后再渲染。组件已经初始化完成，并且所有字段都已经注册到表单中。确保你已经正确设置了这些属性。在使用Ant Design（简称antd）的。组件是一个受控组件，这意味着你需要使用。，这样在表单初始化时就会使用这个值。，可能会遇到一些问题。组件中，你可以设置每个字段的。组件的受控属性更新有关。：如果你在表单外部更改了。方法注册到表单中的，这样。组件时，如果你希望使用。]]></description><category></category></item><item><title><![CDATA[js中类数组的对象转化成数组]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/138649577</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/138649577</guid><author>z2823930772</author><pubDate>Fri, 10 May 2024 09:57:56 +0800</pubDate><description><![CDATA[3.Array.from()，转化类数组的对象时，对象里面的必须有个length属性，且属性名必须为数字或者字符串数字。2.Object.values()，获取所有对象的值。1. Object.keys()，获取所有对象的键。3.2 有length，且属性名不为数字。3.3 有length，属性名为数字。3.1 无length。]]></description><category></category></item><item><title><![CDATA[js计算二维数组的下同下标求和]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/138178714</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/138178714</guid><author>z2823930772</author><pubDate>Thu, 25 Apr 2024 13:49:34 +0800</pubDate><description><![CDATA[【代码】js计算二维数组的下同下标求和。]]></description><category></category></item><item><title><![CDATA[npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1，因为在此系统上禁止运行脚本。]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/129921173</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/129921173</guid><author>z2823930772</author><pubDate>Mon, 03 Apr 2023 08:37:52 +0800</pubDate><description><![CDATA[npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1，因为在此系统上禁止运行脚本。]]></description><category></category></item><item><title><![CDATA[pm2启动node项目]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/126039890</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/126039890</guid><author>z2823930772</author><pubDate>Thu, 28 Jul 2022 17:28:02 +0800</pubDate><description><![CDATA[如果是node服务，想一直启动，可以用PM2,PM2是具有内置负载均衡器的Node.js应用程序的生产流程管理器。它允许您使应用程序永远保持活动状态，在不停机的情况下重新加载它们，并促进常见的系统管理任务。前端项目部署阿里云要配置nginx，然后启动nginx就可以了，npmstartapp.js(app.js是入口文件)但是如果部署到阿里云，启动命令是。本地启动的时候直接用命令。.........]]></description><category></category></item><item><title><![CDATA[阿里云部署前端项目nginx配置]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/125726873</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/125726873</guid><author>z2823930772</author><pubDate>Mon, 11 Jul 2022 18:36:06 +0800</pubDate><description><![CDATA[阿里云部署前端项目，配置nginx]]></description><category></category></item><item><title><![CDATA[antd的TreeSelect获取父节点的值]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/125638640</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/125638640</guid><author>z2823930772</author><pubDate>Wed, 06 Jul 2022 14:39:08 +0800</pubDate><description><![CDATA[antd中有个treeSelect树选择组件点击的时候获取到父节点的值并且回填到输入框]]></description><category></category></item><item><title><![CDATA[Xshell链接服务器]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/125408247</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/125408247</guid><author>z2823930772</author><pubDate>Wed, 22 Jun 2022 14:31:22 +0800</pubDate><description><![CDATA[买了个阿里云服务器，下载了个Xshell1.打开Xshell点击左上角得文件新建弹出一个框2.输入名称（可以随意取，根据你得项目来）3. 打开阿里云，找到实例中得 IP地址 复制公有地址 默认端口号224. 第一次链接需要接受并且保存5. 输入用户名：root
6. 输入实例密码（如果忘了，可以到阿里云的当前实例更多里面的密码/密钥去重置）7. 链接成功就可以在里面通过linux命令去查看默认存储空间了7....]]></description><category></category></item><item><title><![CDATA[foreach里面不能写异步await]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/125405720</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/125405720</guid><author>z2823930772</author><pubDate>Wed, 22 Jun 2022 11:23:06 +0800</pubDate><description><![CDATA[前端时间做了个node得项目，需要用数组循环，拿到数组里面得每一个元素得某个值去调接口，然后刷数据，一开始用了foreach去做循环，发现async 和 await写的异步没效果，后来没办法改成了for循环才行...]]></description><category></category></item><item><title><![CDATA[JavaScript的浮点数计算]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/124172682</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/124172682</guid><author>z2823930772</author><pubDate>Thu, 14 Apr 2022 15:59:36 +0800</pubDate><description><![CDATA[我们在前端开发中会遇到一些数字的计算，比如金额，距离等，所以需要用到JavaScript中的Number类型，特别是一些页面需要展示金额，那必须要很准确的数字。

但在ECMAScript 中最有意思的就是Number类型，Number使用IEEE 754 格式表示整数跟浮点值，JavaScript能准确的计算整数，但存储浮点值使用的内存空间是存储整数值的两倍，所以 ECMAScript 总是想方设法把值转换为整数，所以浮点数计算远不如整数精确，比如


0.1 + 0.2 = 0.300000000000]]></description><category></category></item><item><title><![CDATA[koa2的脚手架koa-generator]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/123842405</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/123842405</guid><author>z2823930772</author><pubDate>Wed, 30 Mar 2022 13:40:34 +0800</pubDate><description><![CDATA[如果你想搭建个项目，一般都是有脚手架的，比如vue的脚手架 vue-cli , react的脚手架 create-react-app ，还有一些其他的，像AntD Admin等。如果想使用koa2 , 也是有一些脚手架的，我常用的就是 koa-generator ， 安装它也是很简单：
1.首先需要全局安装
npm install -g koa-generator

2.创建项目
koa2 -e koa2-demo

3.安装依赖
cd koa2-demo
npm install

4.启动项目
npm s]]></description><category></category></item><item><title><![CDATA[数组中找到相同的数据和其下标（有可能多组重复的数据）]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/123733596</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/123733596</guid><author>z2823930772</author><pubDate>Fri, 25 Mar 2022 13:40:48 +0800</pubDate><description><![CDATA[let arr = [1,2,3,1,2,3,2,1,3,4,4,5]
       const nary = arr.reduce((total, item, index) =&gt; {
          if (total[item]) total[item].push(index);
          else total[item] = [index];
          if (index === arr.length - 1)
            Object.keys(t...]]></description><category></category></item><item><title><![CDATA[数据双向绑定vue跟react的实现方式]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/123178701</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/123178701</guid><author>z2823930772</author><pubDate>Fri, 11 Mar 2022 11:47:52 +0800</pubDate><description><![CDATA[vue自带数据双向绑定的api : v-model



结果：



react没有数据双向绑定，要自己去监听输入框的值 然后拿到值 setState





结果：




]]></description><category></category></item><item><title><![CDATA[让antd-ui的tabs切换的时候掉接口，不用缓存数据]]></title><link>https://blog.youkuaiyun.com/z2823930772/article/details/123178760</link><guid>https://blog.youkuaiyun.com/z2823930772/article/details/123178760</guid><author>z2823930772</author><pubDate>Fri, 11 Mar 2022 11:47:24 +0800</pubDate><description><![CDATA[在antd-ui的tabs的切换的时候，它是自带缓存数据的，也就是进入到当前页面，切换到其他tab，再切回来是不会掉接口，直接缓存了数据，类似于下面的 tabs组件。



如果想要每次切换都重新掉接口，更新数据，可以利用当前tab的key去做个判断，再切换的时候，替换这个key



上面的 tabs里面的内容我 是循环塞进去一个组件，然后利用 aciveKey （在state里面初始化）这个字段 去匹配他的 tabPane的key ，然后在onchange 把当前的key再次用setState到 ...]]></description><category></category></item></channel></rss>