首页 > 其他分享 >Vue-跨域、计算属性、监听属性

Vue-跨域、计算属性、监听属性

时间:2024-12-26 21:56:22浏览次数:7  
标签:computed Vue 跨域 计算 数据 监听 属性

跨域

同源策略:同源策略会引起跨域问题,是浏览器中的安全协议,主机、协议、端口只要有一个不一致,就会引起同源策略,从而引起跨域问题

解决办法:1.放开后台(不安全)2.利用script标签中的src属性不受同源策略影响的特点,这种方式叫做JSONP(也需要跟后台配合)3.配置代理(在本地起一个服务,再去向后端服务器发送请求,服务器和服务器之间没有同源策略问题)

在vue.config.js中配置代理

/abc :配置代理名字 让/abc代理目标路径 

target:代理路径

changeOrigin:是否跨域

pathRewrite:路径重写 把/abc设置成空

!!!改完vue.config.js后别忘记重启

计算属性-computed

什么是计算属性:

计算属性是Vue中的一种特殊属性,用于对已有的数据进行计算和衍生,以生成新的数据。计算属性的值是根据依赖的数据动态计算得出的,当依赖的数据发生变化时,计算属性会自动重新计算。

计算属性的作用

缓存结果:计算属性的值会被缓存起来,只有在依赖的数据发生变化时才会重新计算。这样可以避免不必要的重复计算,提高性能。

响应式更新:计算属性会自动追踪依赖的数据,当依赖的数据发生变化时,计算属性会自动重新计算,保持数据的实时性。

简化模板逻辑:通过使用计算属性,可以将复杂的逻辑处理和转换操作放在计算属性中,简化模板中的代码,使模板更加清晰和易读

计算属性如何使用:

在computed(计算属性)中定义属性(computed与data同级),计算属性中的属性不能和data中的属性重复。

fullName就是return后边的东西 发生变化就会走计算属性

写成函数形式 相当于只有一个get方法

也可以定义成对象的格式

对象里有两个方法 get和set 

get后边跟return;set里有val

get就是拿到这个值 fullName的值;set就是设置 手动修改fullName

 监听属性-watch

什么是监听属性:

监听属性是Vue中的一种特殊属性,用于监测数据的变化并触发相应的回调函数。通过监听属性,我们可以在数据发生改变时执行一些额外的逻辑操作。

监听属性的作用:

监听属性的作用是在数据发生变化时,执行一些副作用操作或触发其他的逻辑。它可以用于响应数据的变化并进行相应的处理,比如数据的验证、异步操作、触发其他组件的更新等。

监听属性如何使用:

在watch对象中,可以定义多个属性的监听器,每个属性对应一个回调函数。当被监听的属性发生变化时,Vue会自动调用对应的回调函数,并传递新值和旧值作为参数。

watch里边的属性名可以与data中的属性名重复

监听对象可以写成函数的形式 里面有newVal和oldVal

newVal是最新的值;oldVal是上一次的值

也可以写成对象的格式

immdeiate:true 立即监听 上来就直接监听 

deep:true 深度监听 如果不写深度监听就只监听到obj 不会监听到obj里的属性

如果要监听一个对象,记得给它加上深度监听 deep:true

监听属性和计算属性的区别

computed属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算。主要当作属性来使用,使用的时候不加();

methods方法表示一个具体的操作,主要书写业务逻辑;

watch一个对象,键是需要观察的表达式,值是对应回调函数。主要用来监听某些特定数据的变化,从而进行某些具体的业务逻辑操作;可以看作是computed和methods的结合体

总结来说,计算属性用于对已有的数据进行处理和转换,生成新的数据;而监听属性用于监测数据的变化并执行相应的副作用操作。它们在Vue开发中都有各自的应用场景,根据实际需求选择使用。

标签:computed,Vue,跨域,计算,数据,监听,属性
From: https://blog.csdn.net/m0_46149928/article/details/144751425

相关文章

  • vue3入门教程:ref能否完全替代reactive?
    1.使用场景与数据类型ref:主要用于基本数据类型(如String、Number、Boolean等)。也可以用于对象/数组,但需要通过.value访问。适合单个响应式数据的管理。reactive:主要用于对象类型(如Object、Array)。直接访问属性,不需要.value。适合多个响应式数据的管理。2.访问方式......
  • 基于SpringBoot+Vue+Uniapp的公开课管理小程序(毕业设计/课程设计源码+论文+部署)
    文章目录前言文档图(系统结构图、ER图、用例图等)详细视频演示本系统运行效果图后台管理技术框架后端采用SpringBoot框架前端框架Vue选题推荐(部分)成品项目展示(部分)系统测试系统测试的目的系统功能测试代码参考为什么选择我?获取源码前言......
  • 基于Uniapp + SpringBoot + Vue的酒店管理APP(毕业设计/课程设计源码+论文+部署)
    文章目录前言文档图(系统结构图、ER图、用例图等)详细视频演示本系统运行效果图后台管理技术框架后端采用SpringBoot框架前端框架Vue选题推荐(部分)成品项目展示(部分)系统测试系统测试的目的系统功能测试代码参考为什么选择我?获取源码前言......
  • 大学生期末项目spingboot+vue3实现快递业务项目【附源码】
    目录一.登录界面 二.用户端 2.1用户端寄快递界面2.2寄快递功能2.3取快递功能 ​编辑 2.4查快递功能2.5快递投诉与拦截2.6查询登录者的信息 三.快递员端  3.1查询可视化界面3.2接单与抢单  3.3配送订单3.4快递员查询个人信息三.网点管理员......
  • Docker部署vue
    docker部署vue首先你已经安装好了docker获取nginx镜像dockerpullnginx:1.25.0创建nginxconfig配置文件在项目根目录下创建文件default.conf,写入如下内容server{listen80;server_namelocalhost;#修改为docker服务宿主机的iplocation/{......
  • 基于SSM的毕业生就业管理系统+vue(10757)
     有需要的同学,源代码和配套文档领取,加文章最下方的名片哦一、项目演示项目演示视频二、资料介绍完整源代码(前后端源代码+SQL脚本)配套文档(LW+PPT+开题报告)远程调试控屏包运行三、技术介绍Java语言SSM框架SpringBoot框架Vue框架JSP页面Mysql数据库IDEA/Eclipse开发四、项......
  • 在contos上部署springboot+vue2项目
    jdk下载地址:https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.htmlnodejs下载地址:https://nodejs.org/zh-cn/download/prebuilt-binaries......
  • 【精选】计算机毕业设计SpringBoot+Vue+MySQL物流信息管理系统 物流数据管理 订单跟踪
    博主介绍:  ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W+粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台的优质作者。通过长期分享和实战指导,我致力于帮助更多学生......
  • vue项目安装依赖遇到if not defined npm_config_node_gyp问题处理
    报错信息:解决方法:1.安装node-gyp:npminstall-gnode-gyp2.找到安装node-gyp的路径,直接去安装node的目录下查找,可以参考下图: 3. 在C:\Users\Administrator\.npmrc中添加上一步找到的node-gyp.js的路径:npm_config_node_gyp=C:\ProgramFiles\nodejs\node_modul......
  • Vue项目接入高德地图
    说明:最近开发中有需要使用英文版本的地图,比较下采用了高德地图(百度不支持英文JSAPI,谷歌需要visa信用卡认证),记录一下开发过程。申请密钥,地址:高德地图开放平台在index.html中引入对应文件<linkrel="stylesheet"href="https://a.amap.com/jsapi_demos/static/demo-center/css......