Yang's Blog

Yang's Blog

Vuex 状态管理与项目实战
发表于2026-11-11|前端Vue
Vuex 状态管理与项目实战Vuex 是 Vue 的状态管理库,集中管理多个组件共享的数据,解决”跨组件传值太麻烦”的问题。 这一篇讲 Vuex 的五个核心概念、模块化、辅助函数,以及项目实战中的 axios 封装、api 模块化、移动端 vant、mixins 等工程化要点。 Java 对照:Vuex ≈ 一个”全局共享的内存数据容器”,类似后端的单例 Service + 缓存;mutations 像”同步 setter”,actions 像”异步业务方法”。 一、为什么需要 Vuex 多组件共享同一份状态(如登录用户、购物车),用 props/$emit 层层传递太繁琐。 Vuex 把共享状态集中到一个 store,任何组件都能访问和修改。 二、Vuex 五个核心概念 概念 作用 特点 state 数据源(共享数据) 只读 getters 派生数据(类似 computed) 有缓存 mutations 修改 state 的唯一途径 必须同步 actions 处理异步,再提交 mutation 可异步 modules 模块化拆分 s...
vue-router 路由
发表于2026-11-07|前端Vue
vue-router 路由路由是 SPA(单页应用)的核心:根据 URL 的变化,切换显示不同的组件,页面不刷新。 这一篇讲 vue-router 的基本使用、路由高亮、导航传参、重定向与 404、路由模式、编程式导航。 Java 对照:路由 ≈ 后端 Controller 的 URL 映射(@RequestMapping),但作用在前端,切换的是组件而不是后端接口。 一、路由基本使用(5+2 步骤)安装:npm install vue-router@3(Vue2 用 3.x)。 1234567891011121314151617181920// main.jsimport Vue from "vue";import VueRouter from "vue-router";import App from "./App.vue";import Find from "./views/Find.vue";import My from "./views/My.vue";Vue.us...
组件化开发
发表于2026-10-30|前端Vue
组件化开发组件是 Vue 最重要的概念——把页面拆成一块块**可复用的”积木”**,每个组件有自己的模板、数据、样式和逻辑。 这一篇讲组件的基础(注册、scoped、data 函数)和进阶(组件通信、v-model 原理、$refs、插槽、自定义指令)。其中组件通信是 Vue 的绝对重点。 Java 对照:组件 ≈ 一个”封装了 UI + 逻辑的类”,props 类似构造参数(只读传入),$emit 类似回调通知父组件。 一、组件基础1. 单文件组件 .vue 三段式123456789101112131415<template> <div class="box">{{ msg }}</div></template><script>export default { data() { return { msg: "hello" }; }};</script>...
Vue 基础与核心
发表于2026-10-25|前端Vue
Vue 基础与核心Vue 是渐进式 JS 框架,核心思想是数据驱动视图(MVVM):你只管改数据,视图自动更新,不用再手动操作 DOM。 这一篇讲 Vue 的基础与核心:实例、插值、响应式原理、指令、修饰符、class/style 绑定、计算属性、侦听器、生命周期。 Java 对照:传统方式(含 jQuery)是”手动查 DOM、改 DOM”;Vue 是”改数据、框架帮你改 DOM”。这是理解 Vue 最重要的思维转变。 一、MVVM 思想1Model(数据 data) ⇄ ViewModel(Vue 实例) ⇄ View(模板 DOM) Model:数据(data) View:页面模板(HTML) ViewModel:Vue 实例,负责双向绑定——数据变了自动更新视图,视图输入自动更新数据。 二、创建 Vue 实例与插值12345678910<div id="app">{{ message }}</div><script src="vue.js"...
前端工程化
发表于2026-10-18|前端Ajax
前端工程化前端工程化 = 用工具把”源代码”(.vue 组件、ES Module、TS、SCSS 等)转换成浏览器能直接运行的、优化后的产物。 它的核心三件套是:模块化(ES Module)+ 包管理(npm)+ 构建工具(Vite)。对 Java 程序员来说,这套东西就相当于 Maven/Gradle 的角色——管理依赖、编译打包、提供构建流程。 一、为什么需要工程化 问题 例子 工程化解决 模块化 import a from "./a.js" 把多个模块打包合并 转译 .vue 文件、TypeScript、SCSS 编译成浏览器认识的 HTML/CSS/JS 依赖管理 用了 Vue、axios 等库 npm 统一安装管理 优化 未使用代码、大文件 压缩、tree-shaking 二、模块化 ES Module(重点)1. 导出 export1234// utils.jsexport default function add(a, b) { return a + b; }...
AJAX
发表于2026-10-14|前端Ajax
AJAXAJAX(Asynchronous JavaScript And XML)的核心思想:浏览器用 JS 异步地发 HTTP 请求,拿到数据后局部更新页面,不刷新整页。 这一篇完整覆盖 AJAX 的整套知识:Promise(异步基础)→ XMLHttpRequest(经典实现)→ fetch(现代原生)→ async/await(优雅写法)→ axios(最常用库)。 Java 对照:axios ≈ 后端的 RestTemplate / OkHttp / HttpClient;Promise ≈ CompletableFuture。 一、AJAX 概述1. 为什么需要异步12345678910// 同步(阻塞):请求期间页面卡死console.log("1");同步请求(); // 假设要等 3 秒console.log("2");// 异步(不阻塞)console.log("1");异步请求(() => console.log("2")); ...
进阶知识点补充
发表于2026-10-10|前端JavaScript
进阶知识点补充这一篇是收尾的进阶补充,把之前零散或没深入的知识点集中讲透:原型与原型链、深浅拷贝、防抖/节流、Symbol、迭代器与生成器,以及严格模式、柯里化、类型判断、逻辑赋值运算符、Proxy 等。 一、原型与原型链(深入)1. 核心关系(基础回顾)123456789function Person(name) { this.name = name;}Person.prototype.say = function () { console.log(this.name);};const p = new Person("Tom");p.say(); // "Tom" 三条关键等式(原型链的本质): 123p.__proto__ === Person.prototype; // true(实例 → 原型对象)Person.prototype.__proto__ === Object.prototype; // true(原型对象 → Obje...
BOM
发表于2026-09-30|前端JavaScript
BOMBOM(Browser Object Model,浏览器对象模型)是浏览器提供的、用来操作浏览器本身的对象集合,window 是它的顶层对象。 这一篇讲 BOM 的重要对象:window、location、history、navigator、screen,以及本地存储 localStorage / sessionStorage(重点)。 一、window 对象window 是全局对象,所有全局变量和全局函数都是 window 的属性和方法。 123var name = "Tom";console.log(window.name); // "Tom"(全局变量挂在 window 上)console.log(window === window.window); // true 1. 常用方法1234567alert("提示框"); // 弹窗提示confirm("确定吗?"); // 确认框,返回 true / falseprompt("请输入&qu...
事件
发表于2026-09-27|前端JavaScript
事件事件是用户与页面交互的桥梁:点击、输入、滚动、按键都会触发事件,JS 通过监听事件来响应用户操作。 这一篇讲事件的注册与解绑、事件类型、事件对象、事件流(冒泡/捕获)、事件委托。其中事件流和事件委托是重点,也是 JS 与 Java GUI(如 Swing 的监听器)最大的差异。 一、注册与解绑事件1. 三种注册方式12<!-- 方式一:HTML 属性(不推荐,结构和逻辑混在一起) --><button onclick="alert('hi')">按钮</button> 12345678910// 方式二:DOM 属性(同一事件只能绑一个,后写覆盖前写)btn.onclick = function () { console.log("点击"); };// 方式三:addEventListener(推荐,可绑多个,按顺序执行)btn.addEventListener("click", function () { con...
DOM 基础与节点操作
发表于2026-09-24|前端JavaScript
DOM 基础与节点操作DOM(Document Object Model,文档对象模型)是浏览器把 HTML 解析成的一棵节点树,JS 通过 document 对象操作这棵树,就能动态改变页面内容。 这一篇把 DOM 的基础操作合并讲完:获取元素、操作内容、操作属性与样式、节点关系、增删节点、表单操作。这是 DOM 的地基,后面所有交互都建立在它之上。 一、DOM 概念123456<!DOCTYPE html><html><body> <div id="box">hello</div></body></html> 浏览器会把它解析成一棵节点树:document → html → body → div,每个标签都是一个”节点(元素节点)”。 二、获取元素12345678910// 1. 按 id(返回单个元素,不存在返回 null)document.getElementById("box");// 2. 按标签名 / 类名(返回动态 HTMLColle...
12…11
avatar
Yang
萌新打怪升级中......
文章
109
标签
246
分类
23
Follow Me
公告
This is my Blog
最新文章
Vuex 状态管理与项目实战2026-11-11
vue-router 路由2026-11-07
组件化开发2026-10-30
Vue 基础与核心2026-10-25
前端工程化2026-10-18
分类
  • Git1
  • Java73
    • Docker1
    • ES3
    • JavaSE17
    • LangChain4J5
    • Linux1
    • Mybatis3
标签
键值设计 高可用 RequestMapping 职责链模式 boosting DSL 负载均衡 观察者模式 Json处理 Series 响应式 工厂方法模式 Direct master TCP 策略模式 Validation 迭代器 死信 生产者确认 Git 异常 RDB 缓存穿透 依赖注入 HttpMessageConverter InputStream BIO 插槽 Vite 转换流 fetch KNN C4.5 Caffeine 执行流程 混淆矩阵 流式输出 缓存雪崩 生命周期
归档
  • 十一月 2026 2
  • 十月 2026 5
  • 九月 2026 10
  • 八月 2026 2
  • 六月 2026 1
  • 五月 2026 4
  • 四月 2026 9
  • 一月 2026 5
网站信息
文章数目 :
109
本站访客数 :
本站总浏览量 :
最后更新时间 :
© 2025 - 2026 By Yang框架 Hexo 7.3.0|主题 Butterfly 5.5.5-b1