vue3中标签的ref属性

组合API-ref属性

vue2.x中,可以通过给元素添加ref='xxx'属性,然后在代码中通过this.$refs.xxx获取到对应的元素

然而在vue3中时没有$refs这个东西的,因此vue3中通过ref属性获取元素就不能按照vue2的方式来获取。

目标:掌握使用ref属性绑定DOM或组件

获取DOM或者组件实例可以使用ref属性,写法和vue2.0需要区分开

  • 基于Vue2的方式操作ref-----数组场景
<ul>
  <li v-for="(item, index) in list" ref="fruits" :key="index">{
  
  { item }}</li>
  <!-- <my-com :key='index' v-for='index in 8' ref='info'></my-com> -->
</ul>
<button @click="handleClick">点击</button>
methods: {
  handleClick () {
    const fruits = this.$refs.fruits
    console.log(fruits[1].innerHTML)
  }
}
// 批量绑定同名的ref (主要就是v-for场景中使用 ref),此时通过[this.$refs.名称]访问的值应该是一个数组,数组中包含每一个DOM元素
// ref绑定组件的用法与之类似

总结:

  1. Vue2中可以通过ref直接操作单个DOM和组件 this.$refs.info.innerHTML
  2. Vue2中可以批量通过ref操作DOM和组件 this.$refs.fruit[0].innerHTML
  • ref操作单个DOM元素----Vue3的规则
<template>
  <div>
    <div>ref操作DOM和组件</div>
    <hr>
    <!-- 3、模板中绑定上述返回的数据 -->
    <div ref='info'>hello</div>
    <!-- <my-com ref='info'>hello</my-com> -->
    <ul>
      <li ref='fruit' v-for='item in fruits' :key='item.id'>{
  
  {item.name}}</li>
    </ul>
    <button @click='handleClick'>点击</button>
  </div>
</template>

<script>
import { ref } from 'vue'

export default {
name: 'App',
setup () {
// this. r e f s . i n f o . i n n e r H T M L / / t h i s . refs.info.innerHTML // this. refs.info.innerHTML//this.refs.fruit 的值应该是一个数组,数组中放的DOM元素
// this.$refs.fruit[0].innerHTML —> apple
// -----------------------------------------
// Vue3中通过ref操作DOM
// 1、定义一个响应式变量
const info = ref(null)

const fruits &#61; ref([{
  id: 1,
  name: &#39;apple&#39;
}, {
  id: 2,
  name: &#39;orange&#39;
}])

const handleClick &#61; () &#61;&gt; {
  // 4、此时可以通过info变量操作DOM
  console.log(info.value.innerHTML)
}

// 2、把变量返回给模板使用
return { fruits, info, handleClick }

}
}
</script>

<style lang="less">
</style>

总结:操作单个DOM或者组件的流程

  1. 定义一个响应式变量
  2. 把变量返回给模板使用
  3. 模板中绑定上述返回的数据
  4. 可以通过info变量操作DOM或者组件实例
  • 获取v-for遍历的DOM或者组件
<template>
  <div>
    <div>ref操作DOM和组件</div>
    <hr>
    <!-- 3、模板中绑定上述返回的数据 -->
    <div ref='info'>hello</div>
    <!-- <my-com ref='info'>hello</my-com> -->
    <ul>
      <li :ref='setFruits' v-for='item in fruits' :key='item.id'>{{item.name}}</li>
    </ul>
    <button @click='handleClick'>点击</button>
  </div>
</template>

<script>
import { ref } from ‘vue’

export default {
name: ‘App’,
setup () {
// this. r e f s . i n f o . i n n e r H T M L < / s p a n > < s p a n c l a s s = " t o k e n c o m m e n t " > / / t h i s . refs.info.innerHTML</span> <span class="token comment">// this. refs.info.innerHTML</span><spanclass="tokencomment">//this.refs.fruit 的值应该是一个数组,数组中放的DOM元素
// this.$refs.fruit[0].innerHTML —> apple
// -----------------------------------------
// Vue3中通过ref操作DOM
// 1、定义一个响应式变量
const info = ref(null)

<span class="token keyword">const</span> fruits <span class="token operator">&#61;</span> <span class="token function">ref</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token punctuation">{<!-- --></span>
  <span class="token literal-property property">id</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span>
  <span class="token literal-property property">name</span><span class="token operator">:</span> <span class="token string">&#39;apple&#39;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{<!-- --></span>
  <span class="token literal-property property">id</span><span class="token operator">:</span> <span class="token number">2</span><span class="token punctuation">,</span>
  <span class="token literal-property property">name</span><span class="token operator">:</span> <span class="token string">&#39;orange&#39;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{<!-- --></span>
  <span class="token literal-property property">id</span><span class="token operator">:</span> <span class="token number">3</span><span class="token punctuation">,</span>
  <span class="token literal-property property">name</span><span class="token operator">:</span> <span class="token string">&#39;pineapple&#39;</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">)</span>

<span class="token comment">// 定义操作DOM的函数</span>
<span class="token keyword">const</span> arr <span class="token operator">&#61;</span> <span class="token punctuation">[</span><span class="token punctuation">]</span>
<span class="token keyword">const</span> <span class="token function-variable function">setFruits</span> <span class="token operator">&#61;</span> <span class="token punctuation">(</span><span class="token parameter">el</span><span class="token punctuation">)</span> <span class="token operator">&#61;&gt;</span> <span class="token punctuation">{<!-- --></span>
  <span class="token comment">// 参数el表示单个DOM元素</span>
  arr<span class="token punctuation">.</span><span class="token function">push</span><span class="token punctuation">(</span>el<span class="token punctuation">)</span>
<span class="token punctuation">}</span>

<span class="token keyword">const</span> <span class="token function-variable function">handleClick</span> <span class="token operator">&#61;</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">&#61;&gt;</span> <span class="token punctuation">{<!-- --></span>
  <span class="token comment">// 4、此时可以通过info变量操作DOM</span>
  <span class="token comment">// console.log(info.value.innerHTML)</span>
  console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>arr<span class="token punctuation">)</span>
<span class="token punctuation">}</span>

<span class="token comment">// 2、把变量返回给模板使用</span>
<span class="token keyword">return</span> <span class="token punctuation">{<!-- --></span> fruits<span class="token punctuation">,</span> info<span class="token punctuation">,</span> handleClick<span class="token punctuation">,</span> setFruits <span class="token punctuation">}</span>

}
}
</script>

<style lang=“less”>
</style>

总结:ref批量操作元素的流程

  1. 定义一个函数
  2. 把该函数绑定到ref上(必须动态绑定
  3. 在函数中可以通过参数得到单个元素,这个元素一般可以放到数组中
  4. 通过上述数组即可操作批量的元素
Vue3超详细的 ref()用法,看这一篇就够了
热门推荐
EchoLiner的博客
04-30 7万+
ref()接受一个内部值,返回一个响应式的可更改的 ref 对象,此对象只有一个指向其内部值的 属性.value。 ref() 将传入参数的值包装为一个带 .value 属性ref 对象。
vue3 ref函数用法
wuxing164的博客
11-19 4万+
1.在setup函数 ,可以 使用 ref函数,用于创建一个响应式数据,当数据发生改变时, Vue会自动更新UI

<template>
<div>
<h1>{{mycount}}</h1>
<button @click="changeMyCount">changeMyCount</button>
</div>
</template>

<script>
i…


Vue3入门到精通-- ref以及 ref相关函数,做了6年前端开发
最新发布
2401_83740189的博客
03-21 588
console.log(“obj”, obj.name);console.log(“ ref”, stateTo ref.value);// obj ls// ref lsto ref----------{{ stateTo ref }}let obj = { name: “syl” };let stateTo ref = to Ref(obj, “name”);stateTo ref.value = “zs”;console.log(“obj”, obj.name);console.log(“ ref”, stateTo
	</dl>
vue3 ref使用
CYL_2021的博客
09-18 6719
ref使用
VUE3 ref函数和reactive函数
l1830473688的博客
07-17 6234
VUE3.0 ref 函数,reactive 函数
vue 使用 refs定位dom出现undefined的解决方法
11-29
之前在公司做项目,一直感觉用 ref来定位dom节点挺方便的。但是期间遇到了一个问题,就是在mounted(){}钩子里面 使用this.$ refs.xxx,打印出来的却是undefined? 于是我就对比了一下之前 使用 ref定位的. vue文件,发现了他们之间的区别。 我们要想知道为什么会定位不到某个DOM节点,我们首先要理解mounted(){}这个钩子函数是用来做什么的。 下面是 vue官方给出的 vue生命周期(部分),正如官方所说的一样,一开始不必先理解,不过随这你的学习与 使用,他的参考价值会越来越高。   原来,mounted阶段,DOM结构准备就绪,但是这里的准备就绪需要特别说明一下: D
vue ref和$ refs的 使用
01-21
ref:被用来给元素或子组件注册引用信息,引用信息将会注册在父组件的$ refs对象上。如果在普通的DOM元素上 使用,那么指向的就是普通的DOM元素。

ref 有三种用法:
1、ref 加在普通的元素上,用this.ref.name 获取到的是dom元素
2、ref 加在子组件上,用this.ref.name 获取到的是组件实例,可以使用组件的所有方法。
3、如何利用 v-for 和 ref 获取一组数组或者dom 节点

普通的DOM元素上使用

<input type=textref=TEXT/ >
<button @click=add>


vue3 ref 属性
greed
09-10 3170
vue3 ref 属性 操作单个DOM元素

操作单个DOM或者组件的流程

定义一个响应式变量
把变量返回给模板使用
模板绑定上述返回的数据
可以通过info变量操作DOM或者组件实例

<template>
<div>
<div>ref操作DOM和组件</div>
<hr>
<!-- 3、模板绑定上述返回的数据 -->
<div ref='info'>hello</div&g


vue3 ref的理解
weixin_47886687的博客
01-21 5万+
1.什么是 ref?

ref和reactive一样,也是用来实现响应式数据的方法
由于reactive必须传递一个对象,所以在实际开发如果只是想让某个变量实现响应式的时候回非常麻烦
所以Vue3提供了ref方法实现简单值得监听

2.ref本质

ref底层其实还是reactive,所以当运行时系统会自动根据传入的ref转换成reactive.

3.ref注意点

vue使用ref的值不用通过value获取
在js使用ref的值必须通过value获取




Vue3 ref 属性详解
明天也要努力的博客
07-09 4万+
总结:在 Vue3 没有 $ refs,因此 Vue3 通过 ref 属性获取元素就不能按照 vue2 的 方式来获取。 Vue3 需要借助生命周期方法,因为在 setup 执行时,template 的元素还没挂载到页面上,所以必须在 mounted 之后才能获取到元素。 总结: 先申明 ref 响应式数据,再返回给模版 使用,模板 通过 ref 绑定数据; 总结: 先定义一个空数组,再定义一个函数获取元素,并把该函数绑定到 ref 上(必须动态绑定),最后在函数 可以通过参数得到单个元素,这个元素一般可以放
vue3 ref()
Sapling
11-07 9198
只有当嵌套在一个深层响应式对象内时,才会发生 ref 解包。如果将一个对象赋值给 ref,则这个对象会通过reactive()转为具有深层次的响应式对象。如果将一个新的 ref 赋值给另一个对象具有 ref 属性的 ,那么它会替换掉旧的 ref。接受一个值,返回一个响应式的,可以修改的 ref对象,这个对象只有一个。 属性进行修改,修改后的值也是响应式的,并且修改后会触发相关的副作用。一个 ref对象嵌套在一个响应式对象 属性访问时会自动解包。对于 属性值是 ref对象的对象,解构后也具有响应式。
Vue 使用 ref获取dom元素节点及组件内的数据和方法
01-20
一、获取dom元素节点 为元素添加一个 ref 属性属性的值可任取 以作为该节点的引用名 ref即为 reference(引用)的前三个字母

This is title
This is content

Vue实例的自带的$refs属性获取元素 用预先定义好的引用名来获取 即在页面ref属性定义的值

var vm=new <em>Vue</em>({
   el:&#39;#app&#39;,
   data:{},
   methods:{
    getElement()
    {
        console.log(this.$<em>ref</em>s.myti</div>
		</a>
	</div>
</div>
Vue 2 ref 属性使用方法及注意事项
08-30
主要给大家介绍了关于 Vue 2 ref 属性使用方法及注意事项的相关资料,文 通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。
详解 Vueref特性的 使用
12-28
一、 ref的基本 使用 ref使用

<!-- vm.$<em>ref</em>s.p将会是DOM结点 -->
hello
<!-- vm.$<em>ref</em>s.child将会是子组件实例 -->

如果在普通的 DOM 元素上使用,引用指向的就是DOM 元素如果用在子组件上,引用就指向组件实例
深入理解 < e m > r e f < / e m > s 某组件的 <em>ref</em>s 某组件的 <em>ref</em>s某组件的refs含有该组件的所有ref,看下面的例子

hello
<child-component ref


vue 动态添加class类名的方法
10-18
今天小编就为大家分享一篇 vue 动态添加class类名的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
vue.js ref和$ refs的 使用及示例讲解
12-10
关于 ref和$ refs的用法及讲解, vue.js 文社区( https://cn. vuejs.org/v2/api/# ref )是这么讲解的: ref 被用来给元素或子组件注册引用信息,引用信息将会注册在父... ref可以直接加在HTML标签上,作为一个 属性存在
vue.js ref及$ refs的 使用方法解析
12-13
关于 ref和$ refs的用法及讲解, vue.js 文社区( https://cn. vuejs.org/v2/api/# ref )是这么讲解的: ref 被用来给元素或子组件注册引用信息,引用信息将会注册在父... ref可以直接加在HTML标签上,作为一个 属性存在
vue 获取dom元素内容的方法
08-30
本篇文章主要介绍了在 vue 获取dom元素内容的方法,可以通过给标签加 ref 属性,这里整理了详细的代码,有兴趣的可以了解一下
vue3 ref标签 属性 使用
06-11
Vue 3 ,` ref` 是一个新的响应式 API,用于在模板 引用一个元素或组件,并可以在 JavaScript 代码 访问该元素或组件的 属性和方法。

在模板,可以使用 <em>ref</em> 指令来创建一个 <em>ref</em> 对象,并将其绑定到一个元素或组件上。例如:

&lt;template&gt;
  &lt;div&gt;
    &lt;input type=&quot;text&quot; <em>ref</em>=&quot;input<em>Ref</em>&quot; /&gt;
    &lt;button @click=&quot;handleClick&quot;&gt;Click Me&lt;/button&gt;
  &lt;/div&gt;
&lt;/template&gt;

&lt;script&gt;
import { <em>ref</em> } from &#39;<em>vue</em>&#39;;

export default {
  setup() {
    const input<em>Ref</em> = <em>ref</em>(null);

    function handleClick() {
      input<em>Ref</em>.value.focus();
    }

    return {
      input<em>Ref</em>,
      handleClick,
    };
  },
};
&lt;/script&gt;

在这个例子,我们使用 <em>ref</em> 指令将 input 元素绑定到 input<em>Ref</em> 变量上。在 setup 函数,我们使用 <em>ref</em> 函数创建了一个 <em>ref</em> 对象,并将其初始值设置为 null。然后,我们在 handleClick 函数访问了 input<em>Ref</em>.value,并调用了 focus 方法,以便将焦点设置到 input 元素上。

需要注意的是,在 Vue 3 <em>ref</em> 不再返回一个对象,而是返回一个包含 value 属性的普通 JavaScript 对象。因此,在访问 <em>ref</em> 对象的属性和方法时,需要使用 .value 来访问其值。

另外,在 Vue 3 <em>ref</em> 还可以用于引用组件,例如:

&lt;template&gt;
  &lt;div&gt;
    &lt;MyComponent <em>ref</em>=&quot;myComponent<em>Ref</em>&quot; /&gt;
    &lt;button @click=&quot;handleClick&quot;&gt;Click Me&lt;/button&gt;
  &lt;/div&gt;
&lt;/template&gt;

&lt;script&gt;
import { <em>ref</em> } from &#39;<em>vue</em>&#39;;
import MyComponent from &#39;./MyComponent.<em>vue</em>&#39;;

export default {
  components: {
    MyComponent,
  },
  setup() {
    const myComponent<em>Ref</em> = <em>ref</em>(null);

    function handleClick() {
      myComponent<em>Ref</em>.value.someMethod();
    }

    return {
      myComponent<em>Ref</em>,
      handleClick,
    };
  },
};
&lt;/script&gt;

在这个例子,我们使用 <em>ref</em> 指令将 MyComponent 组件绑定到 myComponent<em>Ref</em> 变量上。在 setup 函数,我们使用 <em>ref</em> 函数创建了一个 <em>ref</em> 对象,并将其初始值设置为 null。然后,我们在 handleClick 函数访问了 myComponent<em>Ref</em>.value,并调用了 someMethod 方法,以便调用 MyComponent 组件的某个方法。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/596369.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python项目实战,用Python实现2048游戏

目录 写在前言项目介绍项目思路环境搭建项目实现初始化Python类初始化游戏窗口定义游戏棋盘和方块移动和合并游戏主循环 进一步探索 写在前言 hello&#xff0c;大家好&#xff0c;我是一点&#xff0c;专注于Python编程&#xff0c;如果你也对感Python感兴趣&#xff0c;欢迎…

基于JSP的酒店客房管理系统(三)

目录 第四章 系统各模块的实现 4.1客房管理系统首页的实现 4.1.1 客房管理系统首页概述 4.2客房管理系统前台的实现 4.2.1 客房管理系统前台概述 4.2.2 客房管理系统前台实现过程 4.2.3 预定客房信息及客房信息的查询 4.3客房管理系统后台的实现 4.3.1 客房管理系统后…

搜索算法系列之四(斐波那契)

以下算法被验证过&#xff0c;如有什么问题或有补充的欢迎留言。 前言 斐波那契数列&#xff0c;又称黄金分割数列&#xff0c;是由意大利数学家&#xff08;Leonardo Fibonacci&#xff09;在1202年提出的。这个数列的递推关系是F(0)1&#xff0c;F(1)1&#xff0c;F(n)F(n-…

最近惊爆谷歌裁员

Python团队还没解散完&#xff0c;谷歌又对Flutter、Dart动手了。 什么原因呢&#xff0c;猜测啊。 谷歌裁员Python的具体原因可能是因为公司在进行技术栈的调整和优化。Python作为一种脚本语言&#xff0c;在某些情况下可能无法提供足够的性能或者扩展性&#xff0c;尤其是在…

【6D位姿估计】数据集汇总 BOP

前言 BOP是6D位姿估计基准&#xff0c;汇总整理了多个数据集&#xff0c;还举行挑战赛&#xff0c;相关报告被CVPR2024接受和认可。 它提供3D物体模型和RGB-D图像&#xff0c;其中标注信息包括6D位姿、2D边界框和2D蒙版等。 包含数据集&#xff1a;LM 、LM-O 、T-LESS 、IT…

android系统serviceManger源码解析

一&#xff0c;serviceManger时序图 本文涉及到的源码文件&#xff1a; /frameworks/native/cmds/servicemanager/main.cpp /frameworks/native/libs/binder/ProcessState.cpp /frameworks/native/cmds/servicemanager/ServiceManager.cpp /frameworks/native/libs/binder/IP…

练习题(2024/5/6)

1路径总和 II 给你二叉树的根节点 root 和一个整数目标和 targetSum &#xff0c;找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1&#xff1a; 输入&#xff1a;root [5,4,8,11,null,13,4,7,2,null,null,5,1], target…

【数据结构】C++语言实现栈(详细解读)

c语言中的小小白-CSDN博客c语言中的小小白关注算法,c,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm1001.2014.3001.5343 给大家分享一句我很喜欢我话&#xff1a; 知不足而奋进&#xff0c;望远山而前行&am…

【携程笔试题汇总】[全网首发] 2024-05-06-携程春招笔试题-三语言题解(CPP/Python/Java)

&#x1f36d; 大家好这里是清隆学长 &#xff0c;一枚热爱算法的程序员 ✨ 本系列打算持续跟新携程近期的春秋招笔试题汇总&#xff5e; &#x1f4bb; ACM银牌&#x1f948;| 多次AK大厂笔试 &#xff5c; 编程一对一辅导 &#x1f44f; 感谢大家的订阅➕ 和 喜欢&#x1f49…

【网心云邀请码:KpyV3Dk7】轻松赚油费,新用户专享福利来袭!绑定设备连续在线7 天必得高额奖励

&#x1f4e2; 各位朋友们&#xff0c;好消息来啦&#xff01;现在注册网心云&#xff0c;通过我们的专属邀请码&#xff1a;KpyV3Dk7 &#xff0c;即可享受多重新手福利&#xff0c;让您的闲置设备为您赚钱&#xff01; &#x1f4b8; 立即加入&#xff0c;您将获得&#xff1…

代码本地化

目的 代码本地化&#xff08;Localization&#xff09;是指将软件应用程序中的文本、图形、声音和其他内容翻译成特定语言的过程&#xff0c;同时确保这些内容在目标文化中适当地呈现。本地化不仅仅是对文本进行翻译&#xff0c;还包括对日期、时间、数字、货币、排序顺序、文本…

生成一个好故事!StoryDiffusion:一致自注意力和语义运动预测器必不可少(南开字节)

文章链接&#xff1a;https://arxiv.org/pdf/2405.01434 主页&#xff1a;https://storydiffusion.github.io/ 对于最近基于扩散的生成模型来说&#xff0c;在一系列生成的图像中保持一致的内容&#xff0c;尤其是那些包含主题和复杂细节的图像&#xff0c;是一个重大挑战。本…

C/C++ BM32 合并二叉树

文章目录 前言题目解决方案一1.1 思路阐述1.2 源码 解决方案二2.1 思路阐述2.2 源码 总结 前言 树的题目大概率是要用到递归的&#xff0c;将一个树的问题拆分成子树的问题&#xff0c;不断拆分。 这题也用到了递归的思想。 题目 已知两颗二叉树&#xff0c;将它们合并成一颗…

腾讯地图商业授权说明一篇文章讲清楚如何操作

最近在使用腾讯地图&#xff0c;发现我要上架应用商店APP需要我有地图的授权书。 认真研究了一下原来腾讯地图现在要收费了&#xff0c;如果你打算以商业目的使用它&#xff0c;比如对第三方用户收费或者进行项目投标等&#xff0c;就需要先获取腾讯位置服务的商业授权许可。申…

网络演进技术演进:裸纤专线、SDH、MSTP+、OTN、PTN、IP-RAN

前言 文章主要介绍常见名词以及其在各自领域实现的功能价值。 01 裸纤 裸光纤&#xff08;裸光纤&#xff09;由运营商提供&#xff0c;是无中继的光纤线路&#xff0c;仅通过配线架连接。相比传统光纤&#xff0c;裸光纤提供纯粹的物理传输路径&#xff0c;无需额外网…

win2012磁盘空间不足,c盘正常,d盘无法写入,如何解决?

&#x1f3c6;本文收录于「Bug调优」专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收藏&&…

人工智能概述与入门基础简述

人工智能&#xff08;AI&#xff09;是计算机科学的一个分支&#xff0c;它致力于创建能够执行通常需要人类智能的任务的机器。这篇科普文章将全面介绍人工智能的基本概念、发展历程、主要技术、实际应用以及如何入门这一领域。 一、人工智能的定义与发展历程 人工智能的概念…

vue2实现生成二维码和复制保存图片功能(复制的同时会给图片加文字)

<template><divstyle"display: flex;justify-content: center;align-items: center;width: 100vw;height: 100vh;"><div><!-- 生成二维码按钮和输入二维码的输入框 --><input v-model"url" placeholder"输入链接" ty…

第四篇:记忆的迷宫:探索计算机存储结构的奥秘与创新

记忆的迷宫&#xff1a;探索计算机存储结构的奥秘与创新 1 引言 1.1 计算机存储系统的发展与重要性 在现代计算技术中&#xff0c;存储系统承担着非常关键的角色&#xff0c;它不仅负责信息的持久保存&#xff0c;同时确保高效的数据访问速度&#xff0c;影响着整体系统性能的…

[redis] redis为什么快

1. Redis与Memcached的区别 两者都是非关系型内存键值数据库&#xff0c;现在公司一般都是用 Redis 来实现缓存&#xff0c;而且 Redis 自身也越来越强大了&#xff01;Redis 与 Memcached 主要有以下不同&#xff1a; (1) memcached所有的值均是简单的字符串&#xff0c;red…
最新文章