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

Vue3编写简单的App组件(二)

一、Vue3页面渲染基本流程

1、入口文件

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><link rel="icon" href="/favicon.ico"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Vite App</title>
</head><body><div id="app"></div><script type="module" src="/src/main.ts"></script>
</body></html>

2、main.ts

//引入CreateApp用于创建应用
import { createApp } from "vue";
// 引入App根组件
import App from './App.vue'createApp(App).mount('#app')

3、App.vue

一个Vue文件包含三部分:template(用来写html,搭建网页结构)、script(用来写js或ts,实现动态交互)和style(用来写css,实现网页样式)

<template><!-- 写html --><div class="app"><h1>你好啊!</h1></div></template><script lang="ts">// 写js或者tsexport default {name: 'App' //组件名}</script><style>/* 写样式 */.app {background-color: #ddd;box-shadow: 0 0 10px;border-radius: 10px;padding: 20px;}
</style>

4、启动项目

二、实现一个复杂点的效果

1、Person.vue

<template><div class="person"><h2>姓名:{{name}}</h2><h2>年龄:{{age}}</h2><button @click="changeName">修改名字</button><button @click="changeAge">修改年龄</button><button @click="showTel">查看联系方式</button></div>
</template><script lang="ts">export default {name:'Person',data(){return {name:'张三',age:18,tel:'13888888888'}},methods:{// 修改姓名changeName(){this.name = 'zhang-san'},// 修改年龄changeAge(){this.age += 1},// 展示联系方式showTel(){alert(this.tel)}}}
</script><style scoped>.person {background-color: skyblue;box-shadow: 0 0 10px;border-radius: 10px;padding: 20px;}button {margin: 0 5px;}
</style>

 2、App.vue

<template><!-- 写html --><h1>我是Maple:</h1><div class="app"><h1>你好啊!</h1><Person /></div></template><script lang="ts">import Person from './components/Person.vue'// 写js或者tsexport default {name: 'App', //组件名components: { Person }}
</script><style>/* 写样式 */.app {background-color: #ddd;box-shadow: 0 0 10px;border-radius: 10px;padding: 20px;}
</style>

3、main.js

//引入CreateApp用于创建应用
import { createApp } from "vue";
// 引入App根组件
import App from './App.vue'createApp(App).mount('#app')

4、index.html

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><link rel="icon" href="/favicon.ico"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Vite App</title>
</head><body><div id="app"></div><script type="module" src="/src/main.ts"></script>
</body></html>

5、页面效果

>>点击修改姓名,姓名由Maple修改为Kelly:

>>点击修改年龄,年龄会加1:

>>点击查看电话,会弹窗显示电话号码:

http://www.lryc.cn/news/296498.html

相关文章:

  • java Servlet 云平台教学系统myeclipse定制开发SQLServer数据库网页模式java编程jdbc
  • QT初始程序
  • ubuntu22.04@laptop OpenCV Get Started: 001_reading_displaying_write_image
  • 51单片机之LED灯模块篇
  • springboo冬奥会科普平台源码和论文
  • 改进神经网络
  • HarmonyOS 开发学习笔记
  • maven java 如何打纯源码zip包
  • Altium Designer(AD)原理图库添加阵列管脚图文教程及视频演示
  • P3647 题解
  • Vivado Tri-MAC IP的例化配置(三速以太网IP)
  • 交友系统---让陌生人变成熟悉人的过程。APP小程序H5三端源码交付,支持二开。
  • uni-app 经验分享,从入门到离职(三)——关于 uni-app 生命周期快速了解上手
  • PostgreSQL 与 MySQL 相比,优势何在?
  • Linux(三)--文件系统
  • DC-8靶机渗透详细流程
  • SolidWorks学习笔记——入门知识2
  • Elasticsearch:通过 ingest pipeline 对大型文档进行分块
  • 数据库管理-第148期 最强Oracle监控EMCC深入使用-05(20240208)
  • Bug2- Hive元数据启动报错:主机被阻止因连接错误次数过多
  • HarmonyOS 鸿蒙应用开发(十、第三方开源js库移植适配指南)
  • Docker- chapter 1
  • 解决IntellIJ Idea内存不足
  • 【网络技术】【Kali Linux】Nmap嗅探(二)多设备扫描
  • 简化版SpringMVC
  • Java密码校验(正则表达式):密码由这四种元素组成(数字、大写字母、小写字母、特殊字符),且必须包含全部四种元素;密码长度大于等于8个字符。
  • 【AMI】2400 环境安装步骤
  • AI:124-基于深度学习的人体遮挡物体重建技术
  • 23种设计模式之单例模式
  • leetCode 30天