首页 > 其他分享 >学习vue3-先抄写文档

学习vue3-先抄写文档

时间:2022-09-20 09:48:18浏览次数:66  
标签:script color setup vue3 文档 抄写 组件 选择器 red

  当 style 标签带有 scoped attribute 的时候,它的 css 只会影响当前组件的元素。它的实现方式是通过 PostCSS 将当前组件添加属性,css 选择器都添加对应属性选择器。子组件的根元素,使用 scoped 后,父组件的样式将不会渗透到子组件中。不过,子组件的根节点会同时被父组件的作用域样式和子组件的作用域样式影响。这样设计是为了让父组件可以从布局的角度出发,调整其子组件根元素的样式。

  通过 v-html 创建的 Dom 内容不会被作用域样式影响,但你仍然可以使用深度选择器来设置其样式。:deep()

  插槽选择器。使用:slotted 伪类以明确地将插槽内容作为选择器的目标。全局选择器。如果想让其中一个样式规则应用到全局,比起另外创建一个 style,可以使用:global 伪类来实现。:global(.red){color:red}

  一个 style module 标签会被编译为 CSS Modules 并将生成的 CSS class 作为$style 对象暴露给组件。

<p :class="$style.red">This should be red</p>

<style module>
  .red {
    color: red;
  }
</style>

<!--
  可以通过给module attribute一个值来自定义注入class对象的属性名
-->

<p :class="classes.red">This should be red</p>

<style module="classes">
  .red {
    color: red;
  }
</style>

  单文件组件的 style 标签支持使用 v-bind css 函数将 css 的值链接到动态的组件状态。这个语法也适用于 script setup,且支持 js 表达式(需要引号包裹起来).实际值会被编译成哈希化的 css 自定义属性,因此 css 本身仍然是静态的。自定义属性会通过内联样式的方式应用到组件的根元素上,并且在源值变更的时候响应式地更新。

<style>
  .text {
    color: v-bind(color);
  }
</style>

<script setup>
  const theme = {
    color: 'red'
  }
</script>

<style scoped>
  p {
    color: v-bind('theme.color');
  }
</style>

  script setup 是在单文件组件(SFC)中使用组合式 API 的编译时语法糖。当同时使用 SFC 与组合式 API 时该语法是默认推荐。相比于普通的 script 语法,它具有更多优势:更少的样板内容,更简洁的代码。能够使用纯 ts 声明 props 和自定义事件。更好的运行时性能(其模版会被编译成同以作用域内的渲染函数,避免了渲染上下文代理对象)。更好的 IDE 类型推导性能。

  要启用该语法,需要在 script 代码块上添加 setup attribute。里面的代码会被编译成组件 setup()函数的内容。这意味着与普通的 script 只在组件被首次引入的时候执行一次不同,script setup 中的代码会在每次组件实例被创建的时候执行。

<script setup>
  console.log('hello setup')
  import { capitalize } from './helpers'
  import MyComponent from './MyComponent.vue'
</script>

<template>
  <MyComponent />
  <div>{{capitalize('hello')}}</div>
</template>

  当使用 script setup 的时候,任何在 script setup 声明的顶层的绑定(包括变量,函数声明,以及 import 导入的内容)都能在模版中直接使用。import 导入的内容也会同样的方式暴露。这意味着我们可以在模板表达式中直接使用导入的 helper 函数,而不需要通过 methods 选项来暴露它。

  响应式状态需要明确使用响应式 API 来创建。和 setup()函数的返回值一样,ref 在模版中使用的时候会自动解包。setup 范围里的值也能被直接作为自定义组件的标签名使用。

  由于组件是通过变量引用而不是基于字符串组件名注册的,在setup中要使用动态组件的时候,应该使用动态的:is来绑定。

  响应式API:核心。ref()接受一个内部值,返回一个响应式的,可更改的ref对象,此对象只有一个指向内部值的属性.value。ref对象是可更改的,也就是说你可以为.value赋予新的值。computed()接受一个getter函数,返回一个只读的响应式ref对象。reactive()返回一个对象的响应式代理。readonly()接受一个对象(不论是响应式还是普通的)或是一个ref,返回一个原值的只读代理。watchEffect()立即运行一个函数,同时响应式地追踪其依赖,并在依赖更改时重新执行。

标签:script,color,setup,vue3,文档,抄写,组件,选择器,red
From: https://www.cnblogs.com/wlxll/p/16709951.html

相关文章

  • vue3 watch和 watchEffect对比
    watch和watchEffectwatchwatch显式指定依赖数据,依赖数据更新时执行回调函数具有一定的惰性(lazy),第一次页面展示的时候不会执行,只有数据变化的时候才会执行(设置i......
  • 【vue3】element-plus组件国际化随时切换语言
    背景我们可以通过ui组件库来统一调整组件的语言设置,比如统一设置成中文或者英文步骤引入element-plus相关的语言包。这里使用中文通过el-config-provider组件进行配......
  • Java基础语法重点06(java Doc生成文档)
    JDK文档(jdk文档中提供了java中的各种技术的详细资料,以及jdk中提供的各种类的帮助说明)跳转到Java帮助文档1跳转到Java帮助文档2参数信息@author(......
  • vue3组件的几种引入、注册、自动注册等
    全局组件的注册和引入全局组件注册components/index.js【方式一:先引入后注册】importBgImagefrom"@/components/global/web-background/bg-image.vue";importBa......
  • ueditor(JSP版)如何实现word文档的导入和下载功能
    ​ ueditor粘贴不能粘贴word中的图片是一个很头疼的问题,在我们的业务场景中客户要求必须使用ueditor并且支持word的图片粘贴,因为这个需求头疼了半个月,因为前端方面因为安......
  • vue3中vuex使用实例
    通过脚手架创建项目会自动创建store/index.js1.vuex基本结构import{createStore}from'vuex'exportdefaultcreateStore({//全局的状态初始值state:{},......
  • Vue3中使用ref获取元素节点
    本文介绍在vue3的setup中使用compositionAPI获取元素节点的几种方法:静态绑定仅仅需要申明一个ref的引用,用来保存元素,在template中,不必bind引用(:ref="domRef"),只需要声......
  • ckeditor粘贴word文档图片的技术
    ​图片的复制无非有两种方法,一种是图片直接上传到服务器,另外一种转换成二进制流的base64码目前限chrome浏览器使用首先以um-editor的二进制流保存为例:打开umeditor.js,......
  • Java复制Word文档
    MicrosoftWord提供了许多易于使用的文档操作工具,同时也提供了丰富的功能集供创建复杂的文档使用。在使用的时候,你可能需要复制一个文档里面的内容到另一个文档。本文介绍......
  • 基于Python的求职招聘管理系统Django企业招聘管理系统(源码调试+讲解+文档)
    ......