当前位置: 首页 > news >正文

pyton 网站开发百度推广优化方案

pyton 网站开发,百度推广优化方案,推荐晚上用的网站,vs2015 手机网站开发readonly() readonly()是一个用于创建只读代理对象的函数。它接受一个对象 (不论是响应式还是普通的) 或是一个 ref&#xff0c;返回一个原值的只读代理。 类型 function readonly<T extends object>(target: T ): DeepReadonly<UnwrapNestedRefs<T>>以下…

readonly()

readonly()是一个用于创建只读代理对象的函数。它接受一个对象 (不论是响应式还是普通的) 或是一个 ref,返回一个原值的只读代理。

类型

function readonly<T extends object>(target: T
): DeepReadonly<UnwrapNestedRefs<T>>

以下是对这个函数签名的详细解释:

  • 参数target: T
    • target是要被转换为只读对象的输入对象。
    • T extends object表示类型参数T必须是一个对象类型,这确保了输入的target只能是对象而不是基本数据类型(如数字、字符串等)。
  • 返回值DeepReadonly<UnwrapNestedRefs<T>>:这个函数返回一个深度只读的、解包了嵌套响应式对象的新对象。
    • DeepReadonly是一个工具类型,它使传入的类型变为深度只读类型,即对象的所有嵌套属性也都是只读的。
    • UnwrapNestedRefs是一个工具类型,它用于解包嵌套的响应式对象(由refreactive创建的对象),将嵌套的响应式对象转换为普通的 JavaScript 对象。

示例

readonly()创建的只读代理是深层的:对任何嵌套属性的访问都将是只读的。它的 ref 解包行为与 reactive() 相同,但解包得到的值是只读的。

  • 对象的所有嵌套属性都将变为只读。
  • 任何尝试修改这个对象的操作都会被阻止(在开发模式下,还会在控制台中发出警告)。
import { readonly } from 'vue';
let readonlyObj = readonly({message: 'hello',info: {name: 'readonly',back: 'Proxy对象'}
})// 报错:无法为“message”赋值,因为它是只读属性。
readonlyObj.message = 'hello'
// 无法为“name”赋值,因为它是只读属性。
readonlyObj.info.name = 'readonly!'


如果原始对象是响应式的,那么通过readonly创建的对象也会保持响应性:原始对象的属性发生变化,只读对象也会反映这些变化。

import { reactive, readonly } from 'vue';let reactiveObj = reactive({message: 'hello'
})let readonlyObj = readonly(reactiveObj)
console.log(reactiveObj, readonlyObj)// 修改原始对象reactiveObj
reactiveObj.message = 'hello, world!'
console.log(reactiveObj, readonlyObj)

查看控制台打印结果:
在这里插入图片描述
只读对象readonlyObj跟随原始对象reactiveObj的变化而变化。

应用场景

  • 创建不可变的状态快照。
  • 保护全局状态或配置不被修改。


shallowReadonly()

shallowReadonly()readonly() 的浅层作用形式,是一个用于创建浅层只读代理对象的函数。

shallowReadonly接受一个对象作为参数,并返回一个新的代理对象。
shallowReadonly创建的对象是浅层只读的:

  • 只将对象的顶层属性设置为只读,对象内部的嵌套属性可以被修改。
  • 适用于只需保护对象顶层属性的场景。
import { reactive, shallowReadonly } from 'vue';let readonlyObj = shallowReadonly({message: 'hello',info: {name: 'readonly',back: 'Proxy对象'}
})// 无法为“message”赋值,因为它是只读属性。
readonlyObj.message = 'hello, world!'
// name是嵌套属性,不是readonlyObj的第一层属性,因此,name可以被修改
readonlyObj.info.name = 'readonly!!!'

如果原始对象是响应式的,那么通过shallowReadonly创建的对象也会保持响应性。

http://www.khdw.cn/news/68523.html

相关文章:

  • 网站建设目的内容输出搜索引擎优化是什么意思啊
  • 做网站服务器一年多少钱360点睛实效平台推广
  • 做网站阳泉搜索引擎关键词优化技巧
  • 湖北免费网站建设百度热搜榜
  • 郑州专业网站建设公司首选宁波技术好的企业网站制作
  • 网站建设图片上传操作免费友情链接
  • 7星彩网站开发泉州关键词搜索排名
  • 那个网站推作者百度快速收录权限域名
  • 网站规划与建设课程合肥今天的最新消息
  • 青海百度关键词seo杭州网站优化搜索
  • wordpress添加导航页面seo服务公司招聘
  • cms网站建设的优缺点干净无广告的搜索引擎
  • wordpress大前端5.0下载落实好疫情防控优化措施
  • 西安信誉好的做网站的采集站seo课程
  • 广州城市建设网站爱站网使用体验
  • 现在那个网站做推广效果会好点福州百度关键词排名
  • 学校网站源码电商培训机构哪家好
  • 网站建设包括哪几个方面网络外贸推广
  • 用旧技术做网站能过毕设么知乎百度快照投诉中心官网
  • 京东建设网站的意义北京做网站的公司有哪些
  • 网站模板 素材电脑优化
  • 建设工程公司 网站成都高薪seo
  • javst WordPress 主题seo网站营销推广公司
  • 东莞最大的网络公司网站seo平台
  • 杭州开发网站的公司哪家好南宁 百度网盘
  • 做相亲网站赚钱吗搜索引擎优化的七个步骤
  • 网业游戏黑帽seo论坛
  • 网站建设 要学多久如何进行网站推广?网站推广的基本手段有哪些
  • 做的好的农产品网站互换链接的方法
  • 天津宝坻网站建设张磊sem是什么缩写