Vue入门到放弃之旅今日开启第一篇

Vue+ECharts 自定义系列实现项目排期甘特图 在项目管理与研发协作场景中,甘特图是一种用时间轴表达任务起止、进度与依赖关系的可视化方式。其原理是把任务的时间戳和行号映射到坐标系,再通过图形渲染生成任务条、进度条与今日线,从而直观呈现排期状态。相比通用组件,自研可视化方案能更灵活地适配权限、层级折叠、缩放与大数据量渲染等需求,技术价值在于兼顾交互自由度和工程可控性。常见应用包括中后台管理系统、迭代排期、任务跟踪与资源计划。围绕这些诉求,Vue 与 ECharts 自定义系列(custom series)提供了从数据建模、renderItem 绘制到 da 阅读详情

寄语(废话文学)

首先日常完成工作后,我们开始打开B站,搜索vue.js从入门到精通教程,会出来一大堆让你眼花缭乱.然后们随便点进去看一个,激情满满的一天上午就开始了,目前来说我还是很亢奋的,斗志昂扬!

在这里插入图片描述

那必然选择播放了靠前先试试水,好了话不多说,开始看开始砍.

在这里插入图片描述

p1-p7总结

vue的三大特点:

  1. 组件化,增加复用性
  2. 声明式编码 简洁 区别于命令式编码
  3. 虚拟DOM+DIFF对比算法(这个我理解感觉就类似内存或者缓存)

vue初学的两个语法:

  1. 插值语法:应用于标签体的内容{{}}
  2. 指令语法:应用范围较广 标签属性,标签体等 这里举例介绍了v-bind:href=“url” ==> :href=“url”

代码示例如下: (这里安装的vscode插件有)
Bracket PairColorizer2,chinese,liveSEerver,pathAutoComplete,vue

	 <!-- 引入vue -->
    <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js">
    		</script>
    <!-- 容器 -->
    <div id="root">
       <h1> Hello,{{name}}</h1>
       <a :href="url">{{school.name}}</a>
    </div>

    <script type="text/javascript">
        //创建vue实例
        new Vue({
            //el用于指定当前vue实例为那个容器服务,值通常为css选择器字符串
            el:'#root',
            data:{
                //data用于存储数据 供el指定的容器去使用
                name:'插值语法',
                school:{
                    name:'a标签'
                },
                url:'http://127.0.0.1:5500'
            }
        })
    </script>

p8-p13总结

el语法:两种写法

1.1 创建时挂载: el:'#root' 
1.2 创建后挂载: v.$mount('#root') 
			//el的两种写法 创建时挂载
			el:'#root', 
			//创建后挂载
		    v.$mount('#root')

data两种写法

2.1 对象式: 初期使用没有问题 
2.2 函数式: 使用组件时必须使用函数式
 			//1.data第一种写法:对象式
            /*data:{
                //data用于存储数据 供el指定的容器去使用
                name:'插值语法',
                school:{
                    name:'a标签'
                },
                url:'http://127.0.0.1:5500'
            }*/
            //2.data第二种写法:函数式
            data:function(){
                return{
                    name:'插值语法',
                    school:{
                        name:'a标签'
                    },
                    url:'http://127.0.0.1:5500'
                }
            }

理解MVVM

M模型(model): 对应data中的数据
V视图(view): 模板
VM视图模型(viewModel): vue实例对象 Dom监听,dataBings

在这里插入图片描述

顾名思义对象替换默认属性(具体查看注释和对应的变量)
let是块作用域 var是函数作用域

在这里插入图片描述

Vue的数据代理

Vue的数据代理特性分析以及示意图展示

在这里插入图片描述
在这里插入图片描述

点击事件处理

v-on:click点击事件 ===> @click(方法名()) 点击事件中可以写简单的事件处理

在这里插入图片描述
在这里插入图片描述

键盘属性

这里记录一下登录回车事件的实现 我这里引用的element-ui

 <el-button  style="width: 240px;" type="primary" 
 				 @:keyup.enter.native="submit" @click="login('user')">提交</el-button>			 
 new Vue({
            el:'#login',
            data:{
                user:{
                    username:'',
                    password:''
                } 
            },
            mounted() {
                //绑定事件
                window.addEventListener('keydown',this.keyDown)
            },
            methods: {
                //登录方法
                login(user){
                    
                    console.log(this.user)
                },
                //绑定监听事件
                keyDown(e){
                    console.log(e)
                    //如果是回车则执行登录方法
                    if(e.keyCode===13){
                        this.login();
                    }
                },
                //销毁事件
                destroyed() {
                    window.removeEventListener('keydown',this.keyDown,false);
                },
            },
        })   

计算属性 Computed

computed和methods的区别:
computed页面多次调用相同属性时只会被调用一次,内部有缓存机制
methods方法会被多次调用

在这里插入图片描述

不考虑修改,只考虑读取的时候完整写法与简写

在这里插入图片描述

阶段小练习 登录小页面

<!DOCTYPE html>
<html lang="zh_CN">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>登录页面</title>
    <!-- 引入样式 -->
    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
    <style>
        #login{
            width: 350px;
            height: 200px;
            background-color: rgb(17, 155, 109);
            position: absolute;
            padding: 40px 47px;
            left: 50%;
            top: 50%;
            margin-top: -140px;
            margin-left: -222px;
        };
    </style>
</head>
<body>
    <div id="login">
        <el-form  :model="user" status-icon  ref="ruleForm" label-width="60px" class="demo-ruleForm">
            <el-form-item label="用户名" prop="pass" class="input">
              <el-input type="text" v-model="user.username" autocomplete="off"></el-input>
            </el-form-item>
            <el-form-item label="密码" prop="checkPass" class="input">
              <el-input type="password" v-model="user.password" autocomplete="off"></el-input>
            </el-form-item>
            <el-form-item >
              <el-button  style="width: 290px;" type="primary"  @:keyup.enter.native="submit" @click="login('user')">提交</el-button>
            </el-form-item>
        </el-form>
    </div>
   
</body>
    <!-- 开发环境版本,包含了有帮助的命令行警告 -->
    <script src="../vue.js"></script>
    <!-- 引入组件库 -->
    <script src="https://unpkg.com/element-ui/lib/index.js"></script>
    <script type="text/javascript">
        new Vue({
            el:'#login',
            data:{
                user:{
                    username:'',
                    password:''
                }       
            },
            mounted() {
                //绑定事件
                window.addEventListener('keydown',this.keyDown)
            },
            methods: {
                //登录方法
                login(user){
                    console.log(this.user)
                },
                //绑定监听事件
                keyDown(e){
                    console.log(e)
                    //如果是回车则执行登录方法
                    if(e.keyCode===13){
                        this.login();
                    }
                },
                //销毁事件
                destroyed() {
                    window.removeEventListener('keydown',this.keyDown,false);
                },
            },
        })  
    </script>
</html>

p22 侦听属性(监视属性)

watch监视data属性值的同时也可以监视计算属性的值
下方是对应的两种写法以及方法总结

在这里插入图片描述

vue的监视属性/深度监视正常写法和简写区别在于想使用immediate和deep属性时不可使用简写,必须使用正常写法
注意:不可使用箭头函数,箭头函数修改的时windows的属性值不是vue的属性值

在这里插入图片描述

p25 watch和computed对比

监视属性(侦听属性)和计算属性对比

  • 1.computed能完成的功能,watch都可以完成
  • 2.watch能完成的功能,computed不一定能完成,例如:watch可以进行异步操作.
    两个注意点:
    2.1. 所被Vue管理的函数,最好写成普通函数,这样this的指向才是vm或组件实例对象.
    2.2. 所有不被Vue所管理的函数(定时器的回调函数,ajax的回调函数等),最好写成箭头函数这样this的指向才是vm或组件实例对象.

在这里插入图片描述

如有需要请移步第二篇````

Vue组件封装为Web Components实战指南 Web Components 是浏览器原生支持的可复用 UI 技术标准,基于 Custom Elements 规范实现跨框架、跨环境的组件交付。其核心原理是通过继承 HTMLElement 构造自定义类,并利用 connectedCallback 等生命周期钩子对接 DOM 行为。技术价值在于打破框架锁定,支撑微前端、CMS嵌入、Electron跨窗口等强集成场景。相比传统 Vue 单文件组件,它提供长期演进隔离与无依赖运行能力。本文聚焦 vue-custom-element 封装实践,详解属性映射、事件桥 阅读详情

相关推荐

用Cursor AI编程从零搭建VUE3前端框架的实战经验

在VUE3与TypeScript成为前端主流技术栈的当下,如何高效构建一套结构清晰、可扩展的中后台框架是开发团队的核心诉求。AI编程工具的出现改变了传统手写代码的模式,其原理是基于大模型理解项目上下文,自动生成路由、状态管理、组件等基础代码,从而大幅提升工程效率。这类工具尤其适合从零搭建工程骨架、生成重复性模块,但在复杂权限控制和业务逻辑上仍需人工把关。以Cursor为例,它可辅助完成路由权限配置、动态菜单、数据看板以及m3u8视频流播放等典型业务场景,同时配合精心设计的提示词能显著提高代码质量。本文从实际

weixin_34168880的博客 447

2、Vue 双向数据绑定及模版语法

一、双向数据绑定简介 Vue最核心的功能时双向数据绑定和组件模块化。 双向绑定: 当视图(View)的值发生改变时会自动更新Model的值; 当model的值发生改变时会自动更新视图(View); 这里的视图View是指html中的标签元素,也就是DOM元素;这里的model就是指JavaScript中的对象,也就是用object{foo: bar}。 二、双向数据绑定JS实现 下面示例写了一...

阿牧路泽 663

Vue疫情大屏源码:政务级可视化工程实践

疫情数据可视化不是图表堆砌,而是面向真实政务场景的前端工程体系。其核心在于构建稳定、可维护、高兼容的数据管道与渲染架构,涉及Vue 2.7在老旧政务环境(如CentOS 6.9、IE11)下的深度适配,以及ECharts性能瓶颈下的分层渲染策略(Canvas/SVG/WebGL动态降级)。技术价值体现在物理像素级屏幕适配、三态数据校验状态机、五级网络容灾机制等工程基线设计,广泛应用于疾控指挥大屏、卫健监管平台及基层公卫信息系统,支撑多源异构疫情数据的低延迟、高可靠、长周期稳定呈现。

weixin_34275734的博客 404

vue基础(3)--data-binding

import Vue from 'vue' var globalVar ="123" new Vue({ el:'#root', template: `<div :id="aaa" v-on:click="handleClick" :style="[styles,style2]" :cla...

weixin_34219944的博客 328

用Vue 3 + Pinia打造家庭专属点菜神器,零后端本地存储

前端开发中,单页应用凭借轻量、流畅的交互体验成为日常工具类产品的首选架构。Vue 3作为主流渐进式框架,其响应式系统和组合式API为快速构建中小型应用提供了高效路径。当需要处理共享状态与本地持久化时,Pinia以模块化、类型安全的设计成为Vue生态中理想的状态管理方案。同时,localStorage作为浏览器原生存储能力,可在无后端场景下支撑数据落地,适用于个人工具、家庭小应用等轻量场景。本文通过一个真实家庭的点菜决策痛点,完整展示基于Vue 3 + Vite + Pinia + Vue Router构建的

weixin_33884611的博客 399

SpringBoot+Vue宠物咖啡馆系统设计与实战

前后端分离架构是现代Web应用的基础范式,其核心在于通过清晰的职责划分实现业务可维护性、团队协作高效性与系统弹性伸缩能力。SpringBoot凭借内嵌容器、自动配置和丰富生态,成为Java系企业级后端首选;Vue则以响应式数据绑定和渐进式框架特性,支撑高交互、多终端的前端体验。在实体服务场景如宠物咖啡馆中,该组合不仅解决预约、健康档案、定时预警等典型业务需求,更需兼顾老旧设备兼容、低培训成本、强数据一致性等现实约束。本文围绕真实落地项目,详解SpringBoot 2.7与Vue 2.7的技术选型依据、前后端

weixin_34320724的博客 302

vue从入门到放弃

vue入门 史上最通俗易懂 一 、环境安装 1、初始化npm 2、安装 二 、入门案例 三、vue的声明周期和钩子函数 1、create 相关 2、mounted 相关 3、update 相关 4、destroy 相关 5、生命周期总结 四、基础使用 1、指令 2、计算属性 3、监听器 4、过滤器的使用 5、组件化

秃头的博客 422

基于Spring Boot+Vue的短链接管理系统:架构、算法与部署实战

短链接是互联网营销投放与流量追踪的基础设施,其核心是将长URL转换为短码,并通过重定向完成访问跳转与数据采集。实现一套可运营的短链接管理系统,需要掌握前后端分离架构、数据库索引设计、62进制算法、重定向状态码选择等关键技术。基于Spring Boot与Vue构建的管理后台,能够实现链接管理、访问统计、批量生成等功能,结合Nginx部署与Redis缓存,可支撑企业级应用场景。本文从项目架构、表结构设计、核心算法到部署避坑清单,完整拆解短链接系统的工程化落地过程,为开发者提供一套可直接交付的实践参考。

weixin_34417200的博客 401

Vue太难啦!从入门到放弃day01——vue基础语法

因为公司的业务需要,我要从事前端方面的工作,但是对于从没做过前端的我来说,是一个很大的挑战,所以只能一点点从基础开始学习。嗯,就从Vue开始吧!看我如何从入门到放弃!

小陈工的博客 1907

E28 LoRa模块透传 定点传输 RSSI测试与MicroPython应用

测试说明 测试模块数:3 测试模式:配置模式和传输模式 如果没有检测到串口,首先检查是否安装串口驱动CH341SER,下载链接,提取码:vaw2 工作模式 模式(0-3) M2 M1 M0 模式介绍 备注 0 传输模式 1 0 0 串口打开,无线打开,连续透明传输 空速支持手动配置和自适应波特率自动调节;连续模式双方波特率必须一致 1 RSSI 1 0 1 串口打开,无线打开,RSSI功能打开 模块每100ms输出RSSI强度值 2 测距模式 1 1 0 保留 - 3 配置模式

GniLAY1022的博客 4242

手把手调试Altera FPGA远程升级:从ASMI扇区擦除到Remote Update IP配置的避坑实录

本文详细解析了Altera FPGA远程升级的全流程,重点介绍了Cyclone IV系列FPGA的ASMI扇区擦除和Remote Update IP配置的实战技巧。通过双镜像架构设计、ASMI IP核优化配置及Remote Update IP的隐藏参数设置,帮助开发者避免常见陷阱,提升远程升级的可靠性和效率。

weixin_30872499的博客 447

Vue:从入门到放弃

Vue:从入门到放弃

MMF博客园 704

【校招】SHL 的 General Ability (GA, 通用能力测试)

SHL 的 General Ability (GA, 通用能力测试) 文章目录SHL 的 General Ability (GA, 通用能力测试)1、归纳推理题1.1 圈圈线条推理1.2 图形颜色位置推理1.3 箭头指向推理2. 数字推理题攻略3. 语言推理题 1、归纳推理题   归纳推理题我把它总结为三种类型:圈圈线条推理;图形颜色位置推理;箭头指向推理。 1.1 圈圈线条推理   你别看这个题目看起来很复杂,其实很简单,而且这个题型的题目背后原理都一样!我把我的 tips 偷偷分享给你们嘿嘿~先从 A

Sunnyside_ 2万+

Vue入门到放弃之旅今日开启第二篇

绑定class样式、渲染、vue监视、收集表单数据

rows_com的博客 294

【基于CKF的IMM】CV和CT两个模型下的IMM,二维,滤波使用CKF(容积卡尔曼滤波),附完整的matlab代码

该文章摘要: 本文提出了一种基于交互多模型(IMM)和容积卡尔曼滤波(CKF)的融合定位算法,用于解决目标在直线运动和转弯机动之间的模型切换问题。通过MATLAB仿真实现了IMM-CKF算法,并与单一的CV-CKF(匀速模型)和CT-CKF(匀角速转弯模型)方法进行对比。实验结果表明,在包含直线段和转弯段的复合轨迹跟踪中,IMM-CKF方法能够自适应调整模型权重,显著提高了定位精度。轨迹跟踪图、位置/速度误差对比图以及模型概率曲线直观展示了IMM算法的优势。文章提供了完整的MATLAB实现代码,可用于目标跟

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 614

MATLAB 开发项目实例 1000 例专栏之第37例:基于Simulink的无人机飞行控制系统设计

通过上述项目实例,我们成功地使用Simulink设计和仿真了一个无人机的飞行控制系统。这个项目展示了从无人机建模、路径规划、控制器设计到仿真验证的完整流程。Simulink的可视化和模块化特性使得系统的建模和仿真更加直观和高效。

xiaoheshang_123的博客 163

vue从入门到放弃(六)

今日学习内容: 1.vuex的介绍 2.vuex的结构和组成 3.vuex的安装命令 4.vuex的state、getters、mutations、actions的使用 5.modules模块化和命名空间的使用 vuex的介绍 **VueX 是一个专门为 Vue.js 应用设计的状态管理架构,统一管理和维护各个vue组件的可变化状态(你能够理解成 vue 组件里的某些 data )。**大白话:集中管理数据的模块 它采用集中式存储管理应用的全部组件的状态,并以相应的规则保证状态以一种可预测的方式发生变.

码瘾的空间 337

零基础入门生信转录组数据分析——导读

转录组数据分析(上游,下游,数据可视化)专栏的目录,可以直接通过点击各个分析点直接跳转到相关帖子,方便查找和观看

呆猪儿的博客 1万+

[译] 为什么我放弃了 React 而转向 Vue。

原文地址:Why I left React for Vue. 原文作者:Gwenael P 译文出自:掘金翻译计划 本文永久链接:github.com/xitu/gold-m… 译者:EmilyQiRabbit 校对者:luochen1992,Moonliujk [今日随机的开源者个人简介:sourcerer.io/posva] 最近,在 Github 上 Vue.js 比 React ...

weixin_34335458的博客 680

【WRFDA教程第四期】雷达数据同化(Radar Data Assimilation)

雷达数据同化(Radar Data Assimilation)

WW、forever的博客 1758

【Python】解决 ERROR: Exception:Traceback (most recent call last):(亲测有效)

1、遇到问题2、问题解决

Fanjufei的博客 1万+

Vue3替代vue2就好比自动驾驶代替出租网约车

萝卜快跑不是一时的横空出世,其实在北京包括在武汉已经有几个年头,这次敢拉出来大规模应用,也是技术突破和不断尝试革新的实践,先不说损坏了多少人的利益,对于Ai而言是一次历史的里程碑,从这个角度是可歌的,😄言归正传,今日分享vue2升级到vue3一些步骤。。如果仍然需要支持 IE11 或更低版本,那你仍需继续使用 Vue 2。

caixin185的博客 1104

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

浅探 Vue 组件化思路

腾讯DeepOcean原创文章:dopro.io/explore-vue… 就在前几个月,Vue star 数突破了 100k,正式超越 React。 一、扯点家常 都说前端是个更新迭代飞快的领域,前端框架的演进也越来越激烈,以至于在技术社区里总看到有人求饶:“求不要更新了,老子学不动了”。 在过去的好多些年,jQuery 在前端领域都处于统治地位,在众多框架中脱颖而出,很多写惯了 jQuery ...

weixin_33688840的博客 349

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

SpringBoot+Vue医院挂号就诊系统设计与实现:从表结构到前后端联调

在医疗信息化建设中,前后端分离架构已成为主流开发模式。SpringBoot作为后端框架,凭借自动配置与生态整合能力,能快速构建稳定可靠的RESTful API;Vue则以响应式数据绑定和组件化开发提升前端交互体验。两者通过JSON数据进行通信,配合MySQL持久化存储,可支撑起完整的业务闭环。本文从系统需求出发,剖析了挂号、排班、就诊等核心模块的表结构设计与状态流转机制,并深入讲解了JWT认证、并发号源扣减、病历管理等关键实现。结合真实项目踩坑经历,总结了跨域处理、接口规范、常见启动异常等工程实践要点。对于

weixin_34268169的博客 366

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

运动户外电商小程序全栈实践:SpringBoot+Vue3+小程序商城开发

电商系统的落地通常涉及服务端接口、管理后台与用户端三条链路,而前后端分离正是支撑多端协作的核心理念。SpringBoot 作为服务端框架,负责提供稳定的 REST API 与业务逻辑;Vue3 凭借 Composition API 的优势,让商品管理、订单处理等后台功能更易维护;小程序则借助微信生态实现轻量交易,尤其适合运动户外这类依赖社交传播的类目。从设计原理看,SKU 数据建模、订单状态流转与支付回调是保证交易闭环的关键,规范的分层与接口设计则让系统具备清晰的可扩展性。该技术路线已广泛用于中小型电商、私

weixin_33937499的博客 348

SpringBoot2+Vue3家装服务管理系统实战:从数据模型到部署全解析

在企业管理类项目开发中,前后端分离架构已成为主流选择。SpringBoot2凭借成熟的生态和高效开发体验,搭配Vue3的组件化能力,成为构建后台管理系统的经典组合。本文将回顾一套家装服务管理系统从数据模型设计到部署上线的全过程,涵盖RBAC权限模型、订单状态机、MyBatis-Plus使用技巧、JWT认证、动态路由以及MySQL8.0的实践要点。内容以工程视角展开,帮助读者理解如何将通用技术栈落地到行业业务中,并给出二次开发建议与高频踩坑清单。无论你是在探索管理系统开发方案,还是需要快速搭建一个业务后台,都

优快云头条 270
上一篇: 微信公众号网页授权登录完整步骤版学不会你打我....
下一篇: Vue入门到放弃之旅今日开启第二篇
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值