<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[llfxq的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/llfxq</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; llfxq]]></copyright><item><title><![CDATA[「从零开始的 Vue 3 系列」：第十三章——架构一个Vue项目（简单版）]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142938977</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142938977</guid><author>llfxq</author><pubDate>Wed, 16 Oct 2024 09:03:36 +0800</pubDate><description><![CDATA[本系列将从零开始，系统性地介绍 Vue 3 的常用 API，逐步深入每个核心概念与功能模块。通过详尽的讲解与实战演示，帮助大家掌握 Vue 3 的基础与进阶知识，最终具备独立搭建完整 Vue 3 项目的能力。]]></description><category></category></item><item><title><![CDATA[「从零开始的 Vue 3 系列」：第十四章——项目部署到服务器流程（简单版）]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142939801</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142939801</guid><author>llfxq</author><pubDate>Wed, 16 Oct 2024 09:01:03 +0800</pubDate><description><![CDATA[本系列将从零开始，系统性地介绍 Vue 3 的常用 API，逐步深入每个核心概念与功能模块。通过详尽的讲解与实战演示，帮助大家掌握 Vue 3 的基础与进阶知识，最终具备独立搭建完整 Vue 3 项目的能力。发布步骤：1.使用 Vite 打包生成静态文件。2.选择适合你的发布平台，如 Nginx、Vercel、Netlify 或 Docker。3.配置服务器或平台，上传打包文件，确保正确配置路由和静态资源路径。]]></description><category></category></item><item><title><![CDATA[「从零开始的 Vue 3 系列」：第十二章——Element Plus 组件的二次封装实践（保姆式）]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142914414</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142914414</guid><author>llfxq</author><pubDate>Tue, 15 Oct 2024 09:28:12 +0800</pubDate><description><![CDATA[本系列将从零开始，系统性地介绍 Vue 3 的常用 API，逐步深入每个核心概念与功能模块。通过详尽的讲解与实战演示，帮助大家掌握 Vue 3 的基础与进阶知识，最终具备独立搭建完整 Vue 3 项目的能力。什么是ui组件的二次开发？二次开发有什么用？在 Vue 3 中封装 Element UI 组件库是一个常见的需求，尤其是为了复用组件和提升开发效率。]]></description><category></category></item><item><title><![CDATA[「从零开始的 Vue 3 系列」：第十一章——跨域问题解决方案全解析]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142911999</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142911999</guid><author>llfxq</author><pubDate>Tue, 15 Oct 2024 09:26:56 +0800</pubDate><description><![CDATA[本系列将从零开始，系统性地介绍 Vue 3 的常用 API，逐步深入每个核心概念与功能模块。通过详尽的讲解与实战演示，帮助大家掌握 Vue 3 的基础与进阶知识，最终具备独立搭建完整 Vue 3 项目的能力。]]></description><category></category></item><item><title><![CDATA[「从零开始的 Vue 3 系列」：第十章——深入理解自定义指令]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142882604</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142882604</guid><author>llfxq</author><pubDate>Mon, 14 Oct 2024 10:25:26 +0800</pubDate><description><![CDATA[在 Vue 3 中，自定义指令允许你扩展 HTML 元素的功能。与内置指令（如 v-model、v-if 等）不同，自定义指令是用户根据需求编写的。自定义指令在处理复杂 DOM 操作时非常有用。以下是如何在 Vue 3 中创建和使用自定义指令的详细说明。自定义指令的生命周期钩子函数可以让你在不同的阶段操作 DOM。created：指令绑定时调用，只触发一次。beforeMount：在元素插入 DOM 前调用。mounted：元素插入 DOM后调用。beforeUpdate：更新之前调用。]]></description><category></category></item><item><title><![CDATA[「从零开始的 Vue 3 系列」：第九章——vue3中实‘动态路由‘与“权限管理“]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142880746</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142880746</guid><author>llfxq</author><pubDate>Mon, 14 Oct 2024 10:25:01 +0800</pubDate><description><![CDATA[本系列将从零开始，系统性地介绍 Vue 3 的常用 API，逐步深入每个核心概念与功能模块。通过详尽的讲解与实战演示，帮助大家掌握 Vue 3 的基础与进阶知识，最终具备独立搭建完整 Vue 3 项目的能力。**思路：**动态路由实现就是前端登录获取用户信息->后端验证与权限获取->返回权限数据->前端动态生成路由–>权限控制那么项目中是如何实现呢：定义基础路由// 其他公共路由routes,});在用户登录时，从后端获取用户的权限数据。权限数据通常包含用户可以访问的路由或角色信息。]]></description><category></category></item><item><title><![CDATA[「从零开始的 Vue 3 系列」：第八章——深入解析 Axios 与拦截器的使用与封装]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142878304</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142878304</guid><author>llfxq</author><pubDate>Sat, 12 Oct 2024 15:30:17 +0800</pubDate><description><![CDATA[Axios 基于 Promise 设计，支持异步请求处理，非常适合现代 JavaScript 应用。请求和响应拦截器：可以在请求或响应被 then 或 catch 处理前进行拦截和修改。自动转换 JSON 数据：自动将请求和响应的数据格式转换为 JSON。取消请求：支持请求取消功能。客户端支持防御 XSRF：提供 XSRF 防护功能。]]></description><category></category></item><item><title><![CDATA[「从零开始的 Vue 3 系列：第七章——深入学习核心功能——Router(巨详细)]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142876758</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142876758</guid><author>llfxq</author><pubDate>Sat, 12 Oct 2024 14:49:16 +0800</pubDate><description><![CDATA[安装与基本配置使用 npm 安装 Vue Router 4.x，确保与 Vue 3 的兼容性。配置路由器实例，并将其集成到 Vue 应用中，通过 createRouter 创建路由对象并定义路由规则。声明式路由配置：简单而直观地定义路径与组件的映射关系。动态路由：通过路径参数实现灵活的路由匹配，适用于用户详情页等需求。嵌套路由：通过路由嵌套实现复杂的视图结构，支持多层次的界面布局。导航守卫与懒加载导航守卫：利用路由钩子函数实现权限控制和数据预加载，为应用提供更好的用户体验。]]></description><category></category></item><item><title><![CDATA[「从零开始的 Vue 3 系列」：第六章——深入理解与优化 computed 和 watch 的使用]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142857560</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142857560</guid><author>llfxq</author><pubDate>Fri, 11 Oct 2024 16:48:32 +0800</pubDate><description><![CDATA[Vue 3 中的 computed 和 watch 提供了强大而灵活的工具来处理复杂的状态管理需求，适用于从简单到复杂的各种应用场景。通过掌握它们，你可以在 Vue 3 项目中更有效地管理和响应数据变化。]]></description><category></category></item><item><title><![CDATA[「从零开始的 Vue3 系列」：第五章——拥抱 Pinia - Vuex 的强劲对手解析与使用]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142793032</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142793032</guid><author>llfxq</author><pubDate>Fri, 11 Oct 2024 16:01:02 +0800</pubDate><description><![CDATA[Pinia 中的 store 与 Vuex 中的 module类似。你可以创建独立的 store 文件来管理不同的状态。以下是一个简单的 store 示例：新增、删除、获取、修改等方法都是直接在actions中自己定义的//引入// 定义 Task Storetasks: [] // 任务列表，初始为空}),// 定义 actions 来处理新增、删除和获取任务actions: {// 新增任务},// 根据ID删除任== taskId) 务},// 根据ID获取任务})]]></description><category></category></item><item><title><![CDATA[[从零开始的 Vue3 系列]：第四章——Vue3 中常用组件通信全解析]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142637927</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142637927</guid><author>llfxq</author><pubDate>Mon, 30 Sep 2024 10:54:43 +0800</pubDate><description><![CDATA[在 Vue 3 中，组件通信是构建动态、交互式应用的核心。了解并掌握不同的组件通信方式能帮助我们更高效地管理数据流动和事件处理。]]></description><category></category></item><item><title><![CDATA[[从零开始的 Vue3 系列]：第三章——深入解析 Vue3 的生命周期]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142635997</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142635997</guid><author>llfxq</author><pubDate>Mon, 30 Sep 2024 10:54:27 +0800</pubDate><description><![CDATA[前言
本系列将从零开始，系统性地介绍 Vue 3 的常用 API，逐步深入每个核心概念与功能模块。通过详尽的讲解与实战演示，帮助大家掌握 Vue 3 的基础与进阶知识，最终具备独立搭建完整 Vue 3 项目的能力。Vue 3 的生命周期钩子（Lifecycle Hooks）在组件实例的不同阶段提供了灵活的控制点，开发者可以在这些钩子函数中执行相应的逻辑，如初始化数据、订阅事件、清理资源等。相比于 Vue 2，Vue 3 的生命周期函数名称做了一些修改，以更好地适应组合式 API（Composition AP]]></description><category></category></item><item><title><![CDATA[[从零开始的 Vue3 系列]：第二章——MVVM 与响应式原理深入解析 setup语法糖（巨好用）]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142633790</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142633790</guid><author>llfxq</author><pubDate>Sun, 29 Sep 2024 14:15:15 +0800</pubDate><description><![CDATA[本篇文章详细解析了 Vue 3 中的 setup 语法糖及其相关 API。通过引入 setup 语法糖，Vue 3 提供了一种更加简洁、集中和模块化的方式来管理组件逻辑。开发者可以在 setup 中灵活定义响应式数据、计算属性和方法，并且这些属性和方法会自动暴露给模板使用，无需额外的配置或返回。]]></description><category></category></item><item><title><![CDATA[[从零开始的 Vue3 系列]：第一章——深入解析 MVVM 模式与响应式原理]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142630960</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142630960</guid><author>llfxq</author><pubDate>Sun, 29 Sep 2024 12:27:06 +0800</pubDate><description><![CDATA[MVVM（Model-View-ViewModel）是一种软件架构模式，通常用于开发图形用户界面应用。它通过将应用程序逻辑与用户界面（UI）进行解耦，改善代码的可维护性和测试性。该模式广泛应用于前端框架（如 Vue.js）在前端开发中，MVVM 架构模式与 Vue.js 紧密结合，为开发者提供了更清晰、更易维护的开发体验。通过 MVVM 模式，Vue 实现了 Model、View 和 ViewModel 的分离，使得业务逻辑与用户界面解耦，增强了代码的可维护性和可测试性。]]></description><category></category></item><item><title><![CDATA[【前端高频面试题集锦：深入解析JS闭包】]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142612172</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142612172</guid><author>llfxq</author><pubDate>Sat, 28 Sep 2024 10:38:36 +0800</pubDate><description><![CDATA[闭包（Closure）是指一个函数能够访问其词法作用域中的变量，即使这个函数在其词法作用域之外被执行。换句话说，闭包使得函数可以“记住”并访问定义时的作用域。深刻理解：面试官不仅仅关心你能否解释闭包的定义，还会考察你对其原理的理解。要熟悉闭包与词法作用域之间的关系。举例说明：面试时，尽量通过实际例子解释闭包的概念，这样能更清晰地表达你的思路。避免记忆误区：闭包不是一个特殊的语法，而是一种常见的 JavaScript 现象。要从原理上理解，而不是单纯背定义。]]></description><category></category></item><item><title><![CDATA[从前端到全栈：我的未来职业规划之路]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142612166</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142612166</guid><author>llfxq</author><pubDate>Sat, 28 Sep 2024 10:38:02 +0800</pubDate><description><![CDATA[从2023年初，网上就流传着“前端已死”的论调。我记得在2020年工作时，前端招聘非常多，只要有一点工作经验，就很容易找到一份理想的工作。但四年后，情况发生了变化，现在的招聘要求已经从会使用某一种框架，变成要精通某一种框架，并且还要掌握其他几种框架以及了解后端的某一种语言。对于“前端已死”的说法，我恰恰认为这是一个进行改变的最佳时机。通过这一清晰的职业规划，我希望不断提升自己的技术和管理能力，实现从全栈开发到产品经理，再到项目经理的角色转变。]]></description><category></category></item><item><title><![CDATA[使用Vue 3结合ECharts实现地图数据下钻功能]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142597646</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142597646</guid><author>llfxq</author><pubDate>Fri, 27 Sep 2024 16:50:21 +0800</pubDate><description><![CDATA[实现地图下钻功能的核心是有不同层级的地理数据，比如国家、省份、城市的地图。ECharts 官方提供了大部分国家和地区的地理数据。在 Vue 3 中创建一个 ECharts 组件并实现点击事件处理来进行地图下钻。或者使用第三方 API 来动态获取这些数据。总结思路：地图下钻就是获取点击事件，并重新生成一份下钻后的地图。并将下载好的JSON文件放入assets文件中。选择对应的省市区获取到对应的JSON数据。下载所需的 GeoJSON 数据。]]></description><category></category></item><item><title><![CDATA[使用 Java 分页读取 DOCX 文档的完整步骤]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142597110</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142597110</guid><author>llfxq</author><pubDate>Fri, 27 Sep 2024 16:35:03 +0800</pubDate><description><![CDATA[【代码】使用 Java 分页读取 DOCX 文档的完整步骤。]]></description><category></category></item><item><title><![CDATA[跨域问题全攻略：Vue 与 Java 实现方案]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142597073</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142597073</guid><author>llfxq</author><pubDate>Fri, 27 Sep 2024 16:34:20 +0800</pubDate><description><![CDATA[首先我要解决跨域就得先了解一下跨域，跨域问题（CORS，Cross-Origin Resource Sharing）通常由浏览器的同源策略（Same-Origin Policy, SOP）引起，这是一种用于保护用户安全的浏览器机制。主要原因在于，当浏览器发起请求时，如果请求的目标资源和当前页面的源（协议、域名、端口）不一致，浏览器会默认阻止这些跨域请求，造成“跨域”问题。]]></description><category></category></item><item><title><![CDATA[在 Vue 3 中生成动态的 Word 文档]]></title><link>https://blog.youkuaiyun.com/llfxq/article/details/142567219</link><guid>https://blog.youkuaiyun.com/llfxq/article/details/142567219</guid><author>llfxq</author><pubDate>Thu, 26 Sep 2024 17:33:22 +0800</pubDate><description><![CDATA[在开发过程中遇到一个需求，动态生成一个word报表，当时考虑了是前端做还是后端做的问题，最后发现两个解决需求的方法都大差不差，但考虑到前端少发一个请求，就此使用的前端来解决。就此功能完成了，当然如果需求是生成成功的同时就下载文档，可以将下载功能直接写在生成功能内，就可以省去异步处理的代码量。创建一个工具函数，用于加载。模板，填充数据并生成文档。]]></description><category></category></item></channel></rss>