Vue3学习第一例:Vue3架构入门
入门
Vue3的教程很少,官方网站实例不好整,另外由于Python的Django也掌握了,学习这个有些让人眼乱。Vue项目创建后,在public目录下面自动生成了一个index.htm,里面有个div id="app",这就是简单实例中需要mount的入口,整了半天才发现。
Vue程序的入口,是main.js文件,里面要完成以下工作。
导入createApp
import createApp from "vue"
注意这个vue,我的理解应该是js/vue.js这个文件。
导入待填充index.html中app标签的Vue文件
import App from "./views/Home.vue"
注意这个Home.vue就写全了,它在src/views目录下存放。
声明App并填充实例
createApp(App).mount("#app")
上面的命令很强大,一是声明用Home.vue文件中name:"App"的export default生成一个网页模块,并把它的内容填充到id="app"的div中,生成网页供用户使用。
实例:Vue模块嵌套
普通的Vue使用就不用说了,我们讲一个实际应用中采用模块化开发应用十分常见的方法:Vue文件嵌套使用。
场景
在主页上定制一个Button,点击后自动隐藏或显示一个区别内容,该区域可以是权限声明,也可以是其它信息。
定制Modal.vue
位置:src/views/Modal.vue
代码:
<template> <div class="modal"> <slot></slot> </div> </template>
注意事项:这里有个slot命令,是Vue中用以继承父模块待显示的内容,即这个modal的Div下面,需要显示的内容,我的理解,父级引用时,声明一个moda,然后加一个标签项,该项内容将会在Modal模块中继承和显示。
主界面的template
文件: src/views/Home.vue
<template> <button @click="onModalClick">{{modalFlag?"Close modal":"Open Modal"}}</button> <modal v-if="modalFlag"> <p>Modals would be appeared here when modalFlag is true.</p> </modal> </template>
注意:这里的moda,是Modal。vue这个子组件中定义的,在主文件中使用时,并不需要再定义和引用。
主界面中的script声明
需要声明和引用以下部分内容:
import Modal from "./Modal.vue" import { ref } from "vue";
注意由于Modal.vue和Home.vue都是在一个views目录下,因此这个路径是当前目录,注意别路径错误提示找不到module了呢。
默认参数导出
//exports default export default { name:"Home", components:{ Modal }, setup(){ const modalFlag=ref(false); const onModalClick=()=>{ modalFlag.value=!modalFlag.value; } return { modalFlag, onModalClick } } }
上面一段代码中需要注意的是:
默认导出
export default声明,default是否能够修改,如何改,尚未获得相关信息。
name
name的值一定要有,这个是import 的对象,可以自定义,也可以与函数名称不一致,建议保持一致吧。
components声明
当使用嵌套时,必须将导入的组件作为子组件予以声明,这里有多少个可以导入多少个,比如常见的footer、nav、logo、copyright等。
setup()
一定不要太英语化思维,不是setups,注意这里面存储所有的页面数据元素,可以是简单数据ref,也可以是复杂的reactive,数据要交给template,必须return相应数据,只有return出的数据template才能正常使用。
箭头函数
这个是JS的坑,适应吧,可用于参数赋值,也可以无参函数声明。
总结
Vue3入门搞明白的流程基本上就是这些。要具体使用,还有很多事情要整,但起了第一步。
Vue3学习第一例:Vue3架构入门的更多相关文章
- vue3 学习笔记 (四)——vue3 setup() 高级用法
本篇文章干货较多,建议收藏! 从 vue2 升级到 vue3,vue3 是可以兼容 vue2 的,所以 vue3 可以采用 vue2 的选项式API.由于选项式API一个变量存在于多处,如果出现问题时 ...
- vue3 学习笔记 (五)——vue3 的 setup 如何实现响应式功能?
setup 是用来写组合式 api ,内部的数据和方法需要通过 return 之后,模板才能使用.在之前 vue2 中,data 返回的数据,可以直接进行双向绑定使用,如果我们把 setup 中数据类 ...
- [EntLib]微软企业库5.0 学习之路——第一步、基本入门
话说在大学的时候帮老师做项目的时候就已经接触过企业库了但是当初一直没明白为什么要用这个,只觉得好麻烦啊,竟然有那么多的乱七八糟的配置(原来我不知道有配置工具可以进行配置,请原谅我的小白). 直到去年在 ...
- MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.7 Adding a wms layer
MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.7 Adding a wms layer 前言 Add OGC WMS Layers( ...
- MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.6 Defining Projections and Extents
MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.6 Defining Projections and Extents 一.前言 当在m ...
- MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.5 Adding a raster layer
MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.5 Adding a raster layer 一.前言 MapServer不仅支持 ...
- MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example 1.4 Labeling the Map
MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example 1.4 Labeling the Map 一.前言 MapServer拥有非常灵活的标签 ...
- MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.3 Displaying Classes in a Layer
MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.3 Displaying Classes in a Layer 一.前言 关于第一节的 ...
- MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.2 Static Map with Two Layers
MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.2 Static Map with Two Layers 一.前言 上一篇博客< ...
随机推荐
- 02 SVN 与 Git 的优缺点
上一篇博客大致聊了聊关于版本控制系统的周边,这一篇我们就来继续唠唠作为近年来最受欢迎的两个版本控制系统的优缺点吧. 聊优缺点之前,先简单了解一下这两个这两个版本控制系统好了: 关于 SVN SVN 概 ...
- 痞子衡嵌入式:以i.MXRT1xxx的GPIO模块为例谈谈中断处理函数(IRQHandler)的标准流程
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是以i.MXRT的GPIO模块为例谈谈中断处理函数(IRQHandler)的标准流程. 在痞子衡旧文 <串口(UART)自动波特率识 ...
- ABP Framework V4.4 RC 新增功能介绍
目录 新增功能概述 启动模板删除 EntityFrameworkCore.DbMigrations 项目 CMS-Kit 动态菜单管理 Razor引擎对文本模板的支持 DbContext/Entiti ...
- 14、web服务器介绍
14.1.用户访问网站流程: 1. dns解析原理: 客户端到dns服务器之间的查询为递归查询: dns服务器到根域名服务器的查询是迭代查询: [lc@m01 ~]$ dig www.baidu.co ...
- 『心善渊』Selenium3.0基础 — 22、使用浏览器加载项配置实现用户免登陆
目录 1.浏览器的加载项配置 2.加载Firefox配置 3.加载Chrome配置 1.浏览器的加载项配置 在很多情况下,我们在登录网站的时候,浏览器都会弹出一个是否保存登录账号的信息.如果我们选择保 ...
- centos安装配置和使用 Nexus
Nexus安装配置和使用 第一步安装jdk yum install java-1.8.0-openjdk-devel 第二步下载nexus-3.12.1-01-unix.tar.gzjdk 下载地址: ...
- 重新整理 .net core 实践篇————配置中心[四十三]
前言 简单整理一下配置中心. 正文 什么时候需要配置中心? 多项目组并行协作 运维开发分工职责明确 对风险控制有更高诉求 对线上配置热更新有诉求 其实上面都是套话,如果觉得项目不方便的时候就需要用配置 ...
- 解决pip安装时出现报错TypeError unsupported operand type(s) for -= 'Retry' and 'int'
1.参考 https://stackoverflow.com/questions/42610545/typeerror-unsupported-operand-types-for-retry-and- ...
- linux命令-------find命令之exec
p.p1 { margin: 0; font: 18px "Hannotate SC"; color: rgba(4, 51, 255, 1); -webkit-text-stro ...
- 深入理解 PHP7 中全新的 zval 容器和引用计数机制
深入理解 PHP7 中全新的 zval 容器和引用计数机制 最近在查阅 PHP7 垃圾回收的资料的时候,网上的一些代码示例在本地环境下运行时出现了不同的结果,使我一度非常迷惑. 仔细一想不难发现问题所 ...