VUE框架基础部分随笔

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。

Vue可以使用简单的代码实现一个单页面应用。

基本格式

Vue通过模板语法来声明式的将数据渲染进DOM:

例如:

<div id = "app">
{{ message }}
</div>

通过{{ }}即可将数据绑定至message位置

<script>
const data = {
data(){
return {
message : 'hello Vue !'
}
}
} Vue.createApp(data).mount('#app')
</script>

通过以上方法即可成功创建一个Vue实例!

响应式框架

在一个Vue实例中所有数据都是响应式的{{}}中的数据会根据Vue实例中绑定的数据的实时变化发生改变。

Data中Created,methods,watch的区别

在一个Vue实例中,Vue为用户定义了五个函数执行区域,不同的区域在Vue生命周期的不同时间执行,因此可以用于不同情况。

<script>
const data = {
data(){
return {
message : 'hello Vue !'
}
},
methods: { },
mounted: {

}
watch: { },
create: { }
} Vue.createApp(data).mount('#app')
</script>

执行时间或作用:

created:在html加载完成之前执行 先执行父组。

件再执行子组件。

mounted:在html加载完成之后执行 先执行子组件再执行父组件。

methods:事件方法执行。

watch:监听一个值的变化,变化后执行。

指令

Vue中提供的特殊属性 包括:v-bind , v-on , v-model。

V-bind指令

v-bind 属性:通过此属性可以绑定元素中属性的值 借此实现属性的动态绑定。

例如:

vue代码:

<div id='app'>
  <p v-bind:display='switch' >人生何处不相逢</p>
</div>

javascript代码:

<script>
const data = {
data(){
    return {
      switch: 'none'
    }
  }
}
</script> Vue.createApp(data).mount('#app')
</script>

以上代码即可实现动态控制<p>元素显示与隐藏。

V-on指令

v-on属性:通过此属性可以为元素添加一个事件监听器,来提高用户的交互

例如:

vue代码:

<div id='app'>
  <buttomv-on:click='tijiao'' >提交</buttom>
</div>

javascript代码:

<script>
const data = {
data() {
    return {     }
  }
  methods: {
    tijiao(){
      //事件提交执行的函数
    }
  }
} Vue.createApp(data).mount('#app')
</script>

用户点击button按钮是 vue将会调用tijiao()函数。

V-model指令:

Vue 还提供了 v-model 指令,它能轻松实现表单输入和应用状态之间的双向绑定。

例如:

vue代码:

<div id="app">
<p>{{ message }}</p>
<input v-model="message" />
</div>

javascript代码:

const data = {
data() {
return {
message: '撑伞也是雨中人'
}
}
} Vue.createApp(data).mount('#app')

以上代码即可实现用户输入与元素的双向绑定。

V-if指令:

v-if指令的值绑定data中的元素的值true或false 来控制元素的显示或隐藏。

V-for指令:

v-for指令可以实现列表渲染。

例如:

vue代码:

<div id="app">
<ol>
<li v-for="todo in todos">
{{ todo.text }}
</li>
</ol>
</div>

javascript代码:

const data = {
data() {
return {
todos: [
{ text: '落日归山海' },
{ text: '陪伴成告白' }
]
}
}
} Vue.createApp(data).mount('#app')

构建一个组件化单页面应用

vue可以组件树的构建方式来实现一个应用程序。

通过把页面中的一部分分为不同组件实现组件化编程,提高代码的可维护性。

vue框架基本目录结构:

|--node_modules 已安装的依赖
|--public 目录存放公共资源文件 如image icon等
|--src |--assets 目录储存公共样式,图标等
|--components 目录储存自己编写的组件文件
|--router 目录存储页面路由规则
|--views 目录存放自己编写的页面
|--plugins 目录存放element等配置文件
|--app.vue 文件是页面的入口
|--main.js 文件是js文件的入口 你需要在这里把js文件引入进去
|--ststic 目录存放一些图片图标等静态资源

组件

app.vue文件默认结构:

<template>
<div id = 'app'>
项目主页
</div>
</template> <script>
data () {
return { }
}
</script> <style scoped>

</style>

main.js文件默认结构:

<script>
// 项目的入口文件 每次项目初始化都会加载此文件
import Vue from 'vue'
import App from './App.vue'
import router from './router'
import './plugins/element.js'
import axios from 'axios'
Vue.config.productionTip = false
axios.defaults.baseURL = ''
Vue.prototype.$http = axios
new Vue({
router,
render: h => h(App)
}).$mount('#app')
</script>

路由

通过 Vue-router 技术实现页面的路由。

vue代码

<template>

    <router-link to='/admin'>页面跳转</router-link>

    <router-view></router-view>

</template>

javascript代码

//
// index.js 文件为编写路由的核心文件
//
import Vue from 'vue' // 引入vue
import VueRouter from 'vue-router' // 引入vue-router路由
import AboutMe from '../components/admin.vue' // 引入组件 <--
Vue.use(VueRouter) // Vue全局使用Router
const originalPush = VueRouter.prototype.push VueRouter.prototype.push = function push (location) {
return originalPush.call(this, location).catch(err => err)
} const routes = [ // 配置路由 这里是一个数组
{
path: '/admin',
name: 'admin',
component: admin
}
] const router = new VueRouter({
routes
}) export default router
下列代码实现路由 可以理解为html的<a>标签 。
<router-link to='/admin'>页面跳转</router-link>

将路由结果组件渲染到router-view中。
<router-view></router-view>

在vue应用程序中通常通过编写模块组件的方式由浅入深,自底向上的方式来实现一个大规模的应用程序。

下一篇继续了解:

1 . 使用vue创建多页面网站方法。

2 . 通过 Axios 技术发起http请求实现与后端接口的交互。

3 . 了解element-ui 组件便捷成型工具。

4 . vue-router深入理解。

16:08:46

本文章为作者个人总结,如有错误请指正。

Vue3 框架基础随笔 (一)的更多相关文章

  1. 如何基于Winform开发框架或混合框架基础上进行项目的快速开发

    在开发项目的时候,我们为了提高速度和质量,往往不是白手起家,需要基于一定的基础上进行项目的快速开发,这样可以利用整个框架的生态基础模块,以及成熟统一的开发方式,可以极大提高我们开发的效率.本篇随笔就是 ...

  2. Java基础 随笔整理

    Java基础随笔整理 为了方便阅读,特整理了相关的学习笔记 Java感想 操千曲而后晓声 Java入门 Java其他 Java虚拟机详解 语言入门百题 Java开发工具 · Eclipse Java语 ...

  3. Hibernatel框架基础使用

    Hibernatel框架基础使用 1.简介 1.1.Hibernate框架由来 Struts:基于MVC模式的应用层框架技术 Hibernate:基于持久层的框架(数据访问层使用)! Spring:创 ...

  4. Struts2框架基础

    Struts2框架基础 1.Java的框架 1.1.框架简介 在大型项目开发过程中,经常会使用到一些框架,这样做好的好处是能够提高工作效率,在java中最常用的的框架就是SSH,这其实是三个框架的简称 ...

  5. .NET面试题系列[1] - .NET框架基础知识(1)

    很明显,CLS是CTS的一个子集,而且是最小的子集. - 张子阳 .NET框架基础知识(1) 参考资料: http://www.tracefact.net/CLR-and-Framework/DotN ...

  6. 框架基础之Hibernate简介

    框架基础之Hibernate简介 1.什么是Hibernate? Hibernate是一个开发源代码的对象关系映射框架,它对JDBC进行非常轻量级的对象封装,使得程序员可以随心所欲地使用对象编程思维来 ...

  7. ThinkPHP框架基础

    ThinkPHP 一.php框架基础介绍 真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维 ...

  8. Python云端系统开发入门——框架基础

    Django框架基础 这是我学习北京理工大学嵩天老师的<Python云端系统开发入门>课程的笔记,在此我特别感谢老师的精彩讲解和对我的引导. 1.Django简介与安装 Django是一个 ...

  9. PHP面试(二):程序设计、框架基础知识、算法与数据结构、高并发解决方案类

    一.程序设计 1.设计功能系统——数据表设计.数据表创建语句.连接数据库的方式.编码能力 二.框架基础知识 1.MVC框架基本原理——原理.常见框架.单一入口的工作原理.模板引擎的理解 2.常见框架的 ...

随机推荐

  1. nim_duilib(10)之slider、progress and circleprogress

    introduction 更多控件用法,请参考 here 和 源码. 本文的代码基于这里 本文将介绍3个控件: slider,progress和circleprogress.具体的用法,请参考源码提供 ...

  2. 【LeetCode】1150. Check If a Number Is Majority Element in a Sorted Array 解题报告(C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 字典 二分查找 日期 题目地址:https://lee ...

  3. 【九度OJ】题目1124:Digital Roots 解题报告

    [九度OJ]题目1124:Digital Roots 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1124 题目描述: T ...

  4. 【LeetCode】590. N-ary Tree Postorder Traversal 解题报告 (C++&Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客:http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 递归 迭代 相似题目 参考资料 日期 题目地址:htt ...

  5. python学习第二天:命令行模式和python交互模式

    命令行模式 安装完python开发环境和工具之后,在Windows开始菜单选择"命令提示符",就会进入到命令行模式: 或者都可以,然后 点击enter键,弹出下图中的窗口,即命令行 ...

  6. Codeforces 450C:Jzzhu and Chocolate(贪心)

    C. Jzzhu and Chocolate time limit per test: 1 seconds memory limit per test: 256 megabytes input: st ...

  7. Missing Data in Kernel PCA

    目录 引 主要内容 关于缺失数据的导数 附录 极大似然估计 代码 Sanguinetti G, Lawrence N D. Missing data in kernel PCA[J]. europea ...

  8. ZooKeeper基础知识总结

    数据模型 ZooKeeper数据模型是一个树状的数据结构,类似于文件系统:和文件系统的区别在于树中的每一个节点(叶子节点与非叶子节点)都可以保存数据,且每个节点的访问都必须从根节点开始,以斜线作为分隔 ...

  9. MySQL创建数据库 easyShopping,包括area表、goods表、customer表、orders表、ordersdetall表、test表

    MySQL创建数据库 easyShopping,包括area表.goods表.customer表.orders表.ordersdetall表.test表 商品表表结构: 字段名 说 明 类 型 长 度 ...

  10. .net 经验总结

    先做个自我介绍,我是 2015 年大四实习开始学习的 .net,如果从 2016 年毕业开始算,到目前为止已有 5 年的 web 开发相关经验了,自认为并不是技术很厉害的人,但是也有一点个人的经验,希 ...