Vue2博客项目笔记(第一天)

App.vue 是整个应用的根组件,会被入口文件(如 main.js)导入并挂载到页面上
App.vue 的 export default 作用: 注册子组件

<router-view> 作用: 渲染匹配当前路由规则的组件

ts 复制代码
<router-view>  
  
</router-view>
选项式API (Options API) 结构
ts 复制代码
export default {
  // 组件名称(用于调试、递归调用组件等场景)
  name: "MyComponent",

  // props:接收来自父组件传递的参数
  props: {
    title: String
  },

  // data:定义组件内部的响应式数据(状态)
  data() {
    return {
      // count 是一个响应式变量,初始值为 0
      count: 0
    }
  },

  // computed:计算属性,基于响应式数据自动计算结果并缓存
  computed: {
    doubleCount() {
      return this.count * 2
    }
  },

  // watch:侦听器,监听指定数据变化并执行副作用操作
  watch: {
    count(newVal) {
      console.log('count 改变了', newVal)
    }
  },

  // methods:定义组件中的方法
  methods: {
    handleClick() {
      this.count++
    }
  },

  // 生命周期钩子:mounted 表示组件挂载完成(DOM 渲染完成)
  mounted() {
    console.log("组件挂载完成")
    // 这里可以执行一些初始化操作,如访问 DOM、发请求等
  },

  // components:注册当前组件中要使用的子组件
  components: {
    ChildComponent
  }
}

报错原因: <script setup lang="ts"> 是语法糖模式,会自动将组件暴露出去,不需要手写 export default

要保留 export default 把 setup 去掉即可:

transition ,可以给任何下列情形中的元素和组件添加动态效果

  • 条件渲染 ( v-if)

  • 条件展示 ( v-show)

  • 动态组件

  • 组件根节点

<i> 标签: 用来显示字体图标(如Element UI 图标)

html 复制代码
<!-- 使用 Font Awesome 图标 -->
<i class="fa fa-home"></i> <!-- 显示"首页"图标 -->
<i class="fa fa-search"></i> <!-- 显示"搜索"图标 -->

安装element-ui:

bash 复制代码
npm i element-ui -S
ts 复制代码
//回到顶部  
document.body.scrollTop = 0;  
document.documentElement.scrollTop = 0;
props

props 就是组件对外暴露的"参数接口",用于从父组件接收数据。

this.$router : Vue 实例内置的路由对象,用于编程式导航(跳转页面)

this.$router.push(...): 执行页面跳转操作,相当于 window.location.href = ...,但不会刷新页面

${变量名} 插入变量或表达式

JavaScript 复制代码
let id = 123
let path = `/view/${id}`  // 等价于 "/view/123"
ts 复制代码
<ArticleItem v-for="article in articles"  
v-bind:="article"  
:key="article.id"  
>

这一行:v-bind:="article" 是 Vue 中的"对象展开绑定"写法, 作用是把 article 对象中的所有属性,作为 props 传递给子组件 ArticleItem

可以少写很多重复的 :xxx="article.xxx",代码更简洁

Vue 的全局过滤器(Global Filter)
  • 用来格式化或处理模板中展示的数据

  • 使用场景:对页面中显示的某些数据统一进行格式化,比如日期格式化、数字格式化、文本处理等

相关推荐
AI你一生一世2 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
布莱克6052 小时前
C/C++ 中变量的声明与定义:区别、联系与常见误区
c语言·开发语言·c++·声明·定义
云-缩影2 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
LabVIEW开发2 小时前
LabVIEW 局部变量为何引发竞争条件?四种同步机制
开发语言·labview
瑞克-桑切斯2 小时前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
Dream-Y.ocean2 小时前
鸿蒙PC平台宅匠 3D 室内设计适配实战:基于 Electron 壳方案的 Three.js 双渲染引擎与参数化户型编辑器开发
javascript·3d·harmonyos
benchmark_cc3 小时前
A 股、港股、美股如何建立统一的标的主数据格式?
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
Highcharts.js4 小时前
Highcharts Gantt使用符号的自定义数据标签开发甘特图示例
javascript·甘特图·highcharts·图表开发·实战代码·响应式图表
前进的李工4 小时前
Agent 学习笔记 05:系统提示词应该怎么写
笔记·学习·prompt·agent·个人开发·few-shot·ai应用开发
Zenova EdgeOS4 小时前
Go 工业边缘错误处理实战:用 errors 构建可追溯错误链
开发语言·数据库·golang