缓存 手动keepalive vue

手撕Vue-监听数据变化

经过上一篇的介绍,已经实现了将模板编译成具体数据,接下来要介绍的是如何监听数据的变化,本章主要完成这个需求即可。 在我们文章的开始,我写了一个 Vue 双向数据绑定原理的文章当中封装了一个 Observer 类,这个类的作用就是监听数据的变化,当数据发生变化的时候,会通知订阅者,订阅者会去更新视图。 ......
数据 Vue

手撕Vue-编译模板数据

经上一篇编译指令数据后,我们已经可以将指令数据编译成具体需要展示的数据了,上一篇只是编译了指令数据,还没有编译模板数据,这一篇我们就来编译模板数据。 也就是 {{}} 这种模板的形式我们该如何编译,其实和指令数据编译的思路是一样的,废话不多说,直接上代码。 改造一下 buildText 方法,让它支 ......
模板 数据 Vue

手撕Vue-编译指令数据

经过上一篇的分析,完成了查找指令和模板的功能,接下来就是编译指令的数据了。 所以本章节主要处理的方法则是 buildElement 方法,我们先分析一下我们所拿到的数据在进行编码,这样会更加清晰一些。 我将 name, value 打印出来,分别对应的值是 name: v-model, value: ......
指令 数据 Vue

vue学习六

<div id="app6"> <div v-for="item in list">{{ item }}</div> </div> <script> const app6=new Vue({ el:'#app6', data:{ list:["1","2","3","4","5"] } }) </s ......
vue

vue学习五

<div id="app5"> <button @click="exchange(-5)">点我减五</button> <button @click="exchange(5)">点我加五</button> </div> <script> const app5=new Vue({ el:'#app5' ......
vue

vue项目创建和启动、ElementUI的安装和快速学习

5.创建Vue项目 方式一:命令行(不推荐) 方式二:图形化 先找到项目想要创建的位置,去到该目录下,输入cmd回车 输入 vue ui回车 可能会遇到的问题:Failed to get response from /vue-cli-version-marker 解决办法: 找到 .vuerc文件, ......
ElementUI 项目 vue

milkv-duo启动流程分析:手动构建fip.bin [1/2]

目录构建riscv64-unknown-linux-musl编译工具链直接下载官方工具链尝试自己编译T-head Gcc下载编译binutils编译交叉gcc编译musl手动合成fip.bin和boot.sd编译u-boot生成cvi_board_memmap.h,cvipart.h和imgs.h继 ......
手动 milkv-duo 流程 milkv duo

Redis缓存系统常见问题及解决方案

首先了解以下Redis缓存机制 Redis缓存基于内存,查询时先进入Redis缓存,如若查询不到,则进入MySQL数据库查询信息。数据库取到则更新缓存并返回结果,否则返回空。 缓存穿透问题 什么是缓存穿透 当用户在 Redis 缓存系统执行一条无效查询时,这条无效查询将穿透 Redis 缓存系统并M ......

[Vue]初始Vue

Vue2,建议新人直接饮用vue.js文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale= ......
Vue

Error: Vue packages version mismatch: - vue@2.6.14 (D:\前端\vue01\node_modules\vue\dist\vue.runtime.common.js)- vue-template-compiler@2.7.14 (D:\前端\vue01\node_modules\vue-template-compiler\package.json)

Error: Vue packages version mismatch: - vue@2.6.14 (D:\\前端\vue01\node_modules\vue\dist\vue.runtime.common.js) - vue-template-compiler@2.7.14 (D:\前端\vu ......

输入vue ui出现Failed to get response from /vue-cli-version-marker

解决办法: 找到 .vuerc文件,位置在C:\Users\当前用户.vuerc 将packageManager修改如下: 原因是本地hadoop环境变量回合vue项目有冲突,他们都要用到yarn集群 修改后再重新输入vue ui,没有报错信息且自动打开Vue项目管理器的页面 ......

java——redis随笔——实战——商户查询缓存

把key做了下代码优化: /** * 根据id查询商铺信息 * @param id 商铺id * @return 商铺详情数据 */ @Override public Result queryById(Long id) { // key要唯一 就用id String key = CACHE_SHOP ......
商户 缓存 实战 随笔 redis

手撕Vue-查找指令和模板

接着上一篇文章,我们已经实现了提取元素到内存的过程,接下来我们要实现的是查找指令和模板。 大致的思路是这样的: 遍历所有的节点 需要判断当前遍历到的节点是一个元素还是一个文本 如果是一个元素, 我们需要判断有没有v-model属性 如果是一个文本, 我们需要判断有没有{{}}的内容 那么随着思路的展 ......
指令 模板 Vue

Vue 插槽

默认插槽 : ......
Vue

小白之vue脚手架搭建

(1)cmd命令行安装脚手架工具,安装前设置镜像不然安装很慢。 安装成功 (2)创建vue项目名字叫vue 选择最后一行 新特性回车 上下箭头选择工具,空格表示选中,绿色表示选中的工具,并回车进行下一步。 选择 2.x,选择y 选择带.json 选择no不保存预制(忘了截图),回车开始创建 ......
脚手架 vue

Vue3中的生命周期

Vue3生命周期-CSDN博客 一、Vue3中的生命周期1、setup() : 开始创建组件之前,在 beforeCreate 和 created 之前执行,创建的是 data 和 method 2、onBeforeMount() : 组件挂载到节点上之前执行的函数; 3、onMounted() : ......
周期 生命 Vue3 Vue

【Vue 2】过渡

前言 Vue 提供了多种方式来实现过渡效果。 在CSS过渡和动画中自动应用class 配合CSS动画库 在过渡钩子函数中使用JavaScript操作DOM 配合JavaScript动画库 单元素/组件的过渡 将元素或组件放在<transition>中可以在下列情形中触发过渡效果: 使用了v-if 使 ......
Vue

【Vue Router 3】入门

简介 Vue Router让SPA(Single-page Application)的构建更加容易。 Vue Router的功能: 嵌套的路由/视图映射 模块化的、基于组件的router配置 route params, query, wildcards 由Vue过渡系统支持的视图过渡效果 细粒度(f ......
Router Vue

【Vue 2】计算属性与侦听器

计算属性 vs 方法 vs 侦听器 计算属性的出现是为了解决模板内表达式太过复杂而变得难以维护。 假设我们知道长和宽,要计算一个矩形的面积,如果没有计算属性,我们可能像下面这样处理: <div id="app"> <input type="text" v-model="width"> <input ......
侦听器 属性 Vue

小白之创建第一个vue实例(vue2)

(1)安装node.js,尽量16+版本 (2)打开idea创建vue目录,再在该目录下创建vue1.html文件,并敲入下列代码。 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>大黄哥哥带你学vue</tit ......
vue 实例 vue2

vue style 原理

vue style 的实现主要通过css 的属性选择器 什么是属性选择器? 答:用于判断标签属性的一种选择器 <style> .a[self_attribute]{ ... } </style> <!-- 生效 --> <div self_attribute class="a"></div> <!- ......
原理 style vue

vue+thinkphp5.1实现阿里云oss文件上传(服务器签名上传)

一、vue.js <template> <div class="common-box"> <el-upload class="upload-demo" drag :action="data.host" multiple :auto-upload="false" ref="upload" :data= ......
thinkphp5 thinkphp 服务器 文件 vue

23-Vue组件化编程-非单文件组件和单文件组件

非单文件组件 一个文件中包含有n个组件 Vue中使用组件的三大步骤 1. 定义组件(也就是创建组件) 2. 注册组件(这里有局部注册和全局注册) 3. 使用组件(编写组件标签) 注册组件(局部注册) 靠new Vue的时候传入components选项 <!DOCTYPE html> <html la ......
组件 文件 Vue 23

Javascript、axios、vue基础命令快速学习

1.js: JavaScript 基础学习 JavaScript基础学习 简单案例 1.点击img1,则展示img1图片默认,点击img2则展示img2图片 2.输入框鼠标聚焦onfocus后,显示小写toLowerCase(),失去焦点onblur后显示大写toUpperCase() 3.点击全选 ......
Javascript 命令 基础 axios vue

Vue工程环境搭建(NodeJs以及Vue-cli:出现权限不足的问题解决)

Vue工程 4.1需要依赖NodeJs,官网下载安装后 说明安装成功 4.2配置npm的全局安装路径 npm config set prefix "nodejs的安装目录" 没有出现报错信息即可 4.3切换npm的淘宝镜像,不然外网服务器下载资源会比较慢 npm config set registr ......
Vue 权限 Vue-cli 环境 NodeJs

Vue3 + Quasar系列-代码配置以及报错汇总记录(不断更新中)

1. Vue3 + Quasar系列-代码配置打包去掉hash后缀 去掉hash https://quasar.dev/quasar-cli-vite/developing-pwa/configuring-pwa 2. Vue3 + Quasar改变主题背景 quasar的样式和其他的框架修改不太一 ......
不断 代码 Quasar Vue3 Vue

Vue3| Pinia 持久化插件

对 vuex 或 Pinia 里面的内容做本地持久化 1. 安装插件: npm i pinia-plugin-persistedstate 2. 将插件添加到 pinia 实例上 ① main.js 里导入持久化插件:import piniaPluginPersistedstate from 'pi ......
插件 Pinia Vue3 Vue

手撕Vue-提取元素到内存

接着上一篇文章,我们已经实现了构建Vue实例的过程,接下来我们要实现的是提取元素到内存。 主要是通过文档碎片来实现,文档碎片是一个轻量级的文档,可以包含和控制节点,但是不会像真实的DOM那样占用内存,所以我们可以通过文档碎片来提高性能。 大致的思路是这样的: 创建一个空的文档碎片对象 编译循环取到每 ......
元素 内存 Vue

手动在本地搭建GPT大模型过程

20211325手动在本地搭建GPT大模型过程 一、搭建原因 暑假期间由于闲着无聊且有娄老师在群里经常发一些GPT相关的文章和资料,因此对GPT有了兴趣,再加上我也经常在github上浏览和下载使用一些有趣的公开项目,由此开始着手了解GPT的构建和训练。 二、搭建过程(由于当时没有想到要写博客因此截 ......
手动 模型 过程 GPT

Vue3| Pinia 的 action 异步写法

import { defineStore } from 'pinia' import { ref } from 'vue' import axios from 'axios' export const useChannelStore = defineStore('channel', () => { ......
写法 action Pinia Vue3 Vue