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

视频教学网站怎么做sem推广

视频教学网站怎么做,sem推广,站长百度,淘宝客自己做网站#声明响应式状态 要为 JavaScript 对象创建响应式状态,可以使用 reactive 方法: import { reactive } from vue// 响应式状态const state reactive({count: 0}) reactive 相当于 Vue 2.x 中的 Vue.observable() API ,为避免与 RxJS 中的 ob…

#声明响应式状态

要为 JavaScript 对象创建响应式状态,可以使用 reactive 方法:

 
  1. import { reactive } from 'vue'
  2. // 响应式状态
  3. const state = reactive({
  4. count: 0
  5. })

reactive 相当于 Vue 2.x 中的 Vue.observable() API ,为避免与 RxJS 中的 observables 混淆因此对其重命名。该 API 返回一个响应式的对象状态。该响应式转换是“深度转换”——它会影响嵌套对象传递的所有 property。

Vue 中响应式状态的基本用例是我们可以在渲染期间使用它。因为依赖跟踪的关系,当响应式状态改变时视图会自动更新。

这就是 Vue 响应性系统的本质。当从组件中的 data() 返回一个对象时,它在内部交由 reactive() 使其成为响应式对象。模板会被编译成能够使用这些响应式 property 的渲染函数。

在响应性基础 API 章节你可以学习更多关于 reactive 的内容。

#创建独立的响应式值作为 refs

想象一下,我们有一个独立的原始值 (例如,一个字符串),我们想让它变成响应式的。当然,我们可以创建一个拥有相同字符串 property 的对象,并将其传递给 reactive。Vue 为我们提供了一个可以做相同事情的方法 ——ref

 
  1. import { ref } from 'vue'
  2. const count = ref(0)

ref 会返回一个可变的响应式对象,该对象作为它的内部值——一个响应式的引用,这就是名称的来源。此对象只包含一个名为 value 的 property :

 
  1. import { ref } from 'vue'
  2. const count = ref(0)
  3. console.log(count.value) // 0
  4. count.value++
  5. console.log(count.value) // 1

#Ref 展开

当 ref 作为渲染上下文 (从 setup() 中返回的对象) 上的 property 返回并可以在模板中被访问时,它将自动展开为内部值。不需要在模板中追加 .value

 
  1. <template>
  2. <div>
  3. <span>{{ count }}</span>
  4. <button @click="count ++">Increment count</button>
  5. </div>
  6. </template>
  7. <script>
  8. import { ref } from 'vue'
  9. export default {
  10. setup() {
  11. const count = ref(0)
  12. return {
  13. count
  14. }
  15. }
  16. }
  17. </script>

#访问响应式对象

当 ref 作为响应式对象的 property 被访问或更改时,为使其行为类似于普通 property,它会自动展开内部值:

 
  1. const count = ref(0)
  2. const state = reactive({
  3. count
  4. })
  5. console.log(state.count) // 0
  6. state.count = 1
  7. console.log(count.value) // 1

如果将新的 ref 赋值给现有 ref 的 property,将会替换旧的 ref:

 
  1. const otherCount = ref(2)
  2. state.count = otherCount
  3. console.log(state.count) // 2
  4. console.log(count.value) // 1

Ref 展开仅发生在被响应式 Object 嵌套的时候。当从 Array 或原生集合类型如 Map访问 ref 时,不会进行展开:

 
  1. const books = reactive([ref('Vue 3 Guide')])
  2. // 这里需要 .value
  3. console.log(books[0].value)
  4. const map = reactive(new Map([['count', ref(0)]]))
  5. // 这里需要 .value
  6. console.log(map.get('count').value)

#响应式状态解构

当我们想使用大型响应式对象的一些 property 时,可能很想使用 ES6 解构来获取我们想要的 property:

 
  1. import { reactive } from 'vue'
  2. const book = reactive({
  3. author: 'Vue Team',
  4. year: '2020',
  5. title: 'Vue 3 Guide',
  6. description: 'You are reading this book right now ;)',
  7. price: 'free'
  8. })
  9. let { author, title } = book

遗憾的是,使用解构的两个 property 的响应性都会丢失。对于这种情况,我们需要将我们的响应式对象转换为一组 ref。这些 ref 将保留与源对象的响应式关联:

 
  1. import { reactive, toRefs } from 'vue'
  2. const book = reactive({
  3. author: 'Vue Team',
  4. year: '2020',
  5. title: 'Vue 3 Guide',
  6. description: 'You are reading this book right now ;)',
  7. price: 'free'
  8. })
  9. let { author, title } = toRefs(book)
  10. title.value = 'Vue 3 Detailed Guide' // 我们需要使用 .value 作为标题,现在是 ref
  11. console.log(book.title) // 'Vue 3 Detailed Guide'

你可以在 Refs API 部分中了解更多有关 refs 的信息

#使用 readonly 防止更改响应式对象

有时我们想跟踪响应式对象 (ref 或 reactive) 的变化,但我们也希望防止在应用程序的某个位置更改它。例如,当我们有一个被 provide 的响应式对象时,我们不想让它在注入的时候被改变。为此,我们可以基于原始对象创建一个只读的 Proxy 对象:

 
  1. import { reactive, readonly } from 'vue'
  2. const original = reactive({ count: 0 })
  3. const copy = readonly(original)
  4. // 在copy上转换original 会触发侦听器依赖
  5. original.count++
  6. // 转换copy 将导失败并导致警告
  7. copy.count++ // 警告: "Set operation on key 'count' failed: target is readonly."
http://www.hkea.cn/news/647653/

相关文章:

  • 南京平台公司seo搜索培训
  • 横沥网站建设武汉百度百科
  • 百度给做网站公司线上运营的5个步骤
  • 盘锦网站建设公司网络营销策略包括哪些
  • 简述电子商务网站开发的基本原则一站式网络营销
  • 商丘网站网络推广员的工作内容和步骤
  • 取消wordpress邮箱认证北京搜索优化排名公司
  • 千库网素材南宁seo优势
  • 西安机场商务宾馆百度做网站怎么在百度上做网站
  • ps网站建设seo网络公司
  • 网站建设步骤 教 程网站怎么做谷歌推广
  • 网站制作需要注意什么潍坊做网站哪家好
  • 专门做团购的网站有哪些色盲图
  • 百度做网站续费费用百度营业执照怎么办理
  • 深圳网站建设方维网络企业网站制作要求
  • 制作好网站黑帽seo教程
  • 云南 网站建设网站seo优化对网店的推广的作用为
  • 网站建设免费国外舆情服务公司
  • 怎么做网站banner查排名网站
  • 做网站好看的背景图片相关搜索优化软件
  • 怎么查网站是哪家制作公司做的百度收录查询
  • 企业年金交了有好处吗网络优化工程师吃香吗
  • python做网站开发百度6大核心部门
  • 自己做网站平台企业网站优化价格
  • 淘宝网网站建设的需求分析百度会员登录入口
  • 建网站的专业公司推广网站多少钱
  • 网站不去公安局备案自己怎么搭建网站
  • 外贸网站建设入门深圳网络推广哪家
  • 网站模板资源公司网站推广
  • 广东省建设教育协会官方网站首页html简单网页代码