近期假期组件编写与watch的使用技巧

src\components\MonthPage\item.vue

近期假期子组件

<template>
  <li class="card-item">
    <div class="card">
      <div class="img-wrap">
        <img :src="require(`../../assets/img/${item.name}.jpg`)" :alt="item.name"/>
        <div class="mask">
          <h1>{{item.name}}</h1>
          <h1>{{item.festival}}</h1>
        </div>
      </div>
      <div class="content-wrap">
        <h1>假期描述:{{item.desc || '无说明'}}</h1>
        <h1>拼假建议:{{item.rest || '无说明'}}</h1>
      </div>
    </div>
  </li>
</template>

<script>
  export default {
    name: "CardItem",
    props: ['item'],

  }
</script>

src\components\MonthPage\index.vue

假期组件

<template>
  <div class="list-wrapper">
    <ul class="holiday-list">
      <card-item
        v-for="(item, index) of data"
        :key="index"
        :item="item"
      ></card-item>
    </ul>
  </div>
</template>

<script>
import CardItem from './item'
export default {
  name: 'cardList',
  components: {
    CardItem,
  },
  props:{
    data: Array
  },
  
}
</script>

src\views\Month.vue

近期页面,请求数据

<template>
  <div class="container">
    <error-tip></error-tip>
    <div v-if="!errorCode">
      <card-list :data="monthData"></card-list>
    </div>
  </div>
</template>

<script>
import getData from '@/services'
import { getNowDate } from '@/libs/utils'

import { onMounted, computed, watch } from 'vue'
import { useStore } from 'vuex'
import CardList from '@/components/MonthPage'
import ErrorTip from '@/components/ErrorTip'
export default {
  name: 'MonthPage',
  components: {
    CardList,
    ErrorTip,
  },
  setup() {
    const store = useStore(),
      state = store.state

    onMounted(() => {
      getData(store, 'month', getNowDate('month'))
    })

    watch(
      () => state.dayData,
      () => {
        store.commit('setErrorCode', 0)
      }
    )

    return {
      monthData: computed(() => state.monthData),
      errorCode: computed(() => state.errorCode),
    }
  },
}
</script>

Vue3.0来了,你还学的动吗? 2020年9月底,Vue3.0正式版终于发布了。Vue在全球拥有 130 多万用户 ,它被应用于各种不同的场景中。而在国内,更是最火热的前端框架,2.0与3.0的开发模式有了很大的改变,所以3.0的全新版本势必会引发新的一波学习潮流。对于前端开发者来说,不管你嘴上如何“学不动”,注定离不开“真相定律”,Vue3.0是你提升自身技术能力,晋升中级工程师一定要掌握的。  本课程将基于 Vue3.0 正式版,从Vue基础语法入手,全面掌握 Vue3.0 全家桶技术栈,并结合实战项目开发,让你拥有Vue3.0项目开发经验,更好的掌握Vue开发企业项目的流程 。 本课程共包括三个模块 一、Vue基础篇 本模块将讲解Vue3.0基本用法、插值表达式、常用指令等知识点,还会精讲Vue 3.0核心语法,如计算属性、过滤器、监视器、模板、生命周期等内容。会带你深入理解Vue组件化技术,讲解全局组件和局部组件的定义,组件间数据传递,以及Vue内置组件等知识点。让你掌握模块化的概念,会通过Vue脚本架搭建项目,并掌握使用Axios发送AJAX请求,让你快速入门Vue3.0。 二、Vue核心篇 这个模块会带你讲解Vue3.0全家桶的知识点(Vue Router路由+Vuex状态管理),涉及Vue路由的用法、包括路由嵌套、路由模式、编程式导航、路由守卫等,还会全面讲解Vuex状态管理机制及使用,理解state、mutation、action等核心概念,让你轻松掌握Vue全家桶。 三、项目实战篇 实战项目会贴近企业流程,按照企业级别代码质量和工程开发流程进行授课,让你理解这套技术在企业中被使用的真实流程,更好的掌握Vue各个基础知识点。项目开发流程包括项目需求分析->环境搭建与配置->搭建远程Git仓库->接口分析->项目开发->打包上线。实战项目涉及内容
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值