vue之vue2.x基础知识

简介: vue之vue2.x基础知识

1.vue的声明不可以绑定给body标签

2.vue的声明

3.vue的条件语句(为true的时候,显示,为false的时候隐藏)

Object.freeze() 阻止程序更新页面数据。


cb5a1720074544ccba6b05bf488ad918.png

v-once 一次性插值

当出具发生改变的时候,插值处的内容不会更新。不好处就是 这将有可能影响到其他节点上的数据绑定。


8ba8e30f3225406ebb4889609d3b3987.png

v-on:click.prevent.self 阻止所有的点击事件。


v-on:click.self.prevent只会阻止元素本身元素的点击事件


v-on:click.once = '' 这个点击事件将只触发一次。


(1)if ...else....


v-if="true"


v-else="true"


18c37ae6b09c49c597f9adefad4225f4.png


(2)if.....else.if

v-if="true"

v-else-if

v-else


e290a4c83ab94ae4ad7378729968eb11.png


4. vue循环


数组循环(v-for="i in arr")


对象循环(v-for="(k,v) in obj")()


索引循环(v-for="(k,v,i) in obj")


数组的索引循环 (v-for=“(v,i) in users”)


5.样式绑定(类名的添加)


v-bind:class = "{ active : isActive }"( isActive 是一个bol类型的值,false不添加,true为添加。active 为要添加的class )


0b7fc3e778674b2191ad357897d1982e.png


6.声明vue 应用程序


new Vue({
el:' #myVue '//绑定给某个dom节点的vue程序
// 应用程序里的所有数据
data:{
}
// vue应用程序的所有函数
methods:{
}
//页面一加载就会自动执行的函数
created:function(){
}
})


7.vue 的事件绑定


( v-on:click=“ ” )点击事件


( v-on:click.self=“ ” )点击事件只在当前绑定元素上触发


8.事件修饰符


(1)阻止表单提交的时候页面刷新


( 2 )v-on:click.capture 添加事件监听时使用事件捕获模式显示


(即是给元素添加一个监听器,当元素发生冒泡时,先触发带有该修饰符的元素。若有多个该修饰符,则由外而内触发。


就是谁有该事件修饰符,就先触发谁。并且是事件捕获触发。没有绑定的依旧执行事件冒泡)

div v-on:click.capture="fn1">1
div v-on:click.capture="fn2">2
div v-on:click.capture="fn3">3
div>
div>
div>

(3)键盘事件及其修饰符


v-on:keydown.alt.37 = " "; 键盘事件触发

9.vue 组键


(1) vue 使用组键:componet('组键名称',组键内容(对象));


1ce2535ef4a44243937fdb5b99d4fd26.png


(2)vue组键的声明 必须在vue 实例化之前

(3)vue组键在文档里承接用 js 里组键的名称当做标签去承接


10.配置路由


( 1 )html 文档里路由的点击设置 采用 router-link to ="/标签名"


(2)


js 定义路由组键
const header = {template:'
header
'};const footer = {template:'
footer
'};
配置路由
const routes = {
{path:'/header',component:header},
{path:'/footer',component:footer}
}


实例化vue 配置路由的 routes


133942597e8244bcb790347f65512c84.png


// 最后将实例化出来的 router 声明在 vue应用程序里、

5348ad2d937145bea449b9895db4f308.png

【路由总流程如下】

e3d74400a275423baf93a931482e3061.png


vue脚手架全局安装终端命令

$ sudo npm install -g vue-cli
$ vue -V
$ vue init webpack vueproject
$ npm run dev

为了方便我们开发,还要安装一些其他的依赖模块,所以还要安装一次。

终端命令(当前的vue项目目录下)

$ npm install
安装路由的终端命令
$ npm install vue-router --save
$ npm install vue-resource --save
$ npm install axios --save
$ npm install jQuery --save
plugins: [
new webpack.optimize.CommonsChunkPlugin('common.js'),
new webpack.ProvidePlugin({
jQuery: "jquery",
jquery: "jquery",
$: "jquery",
"window.jQuery": "jquery"
})
]
【引入jquery】
import $ from 'jquery'
阻止单击事件冒泡
<a v-on:click.stop="doThis"></a>
提交事件不再刷新页面
<form v-on:submit.prevent="onSubmit"></form>
修饰符可以串联
<a v-on:click.stop.prevent="doThat"></a>
添加事件侦听器时使用事件捕获模式,,即谁设置谁优先触发
<div v-on:click.capture="doThis">...</div>
事件在该元素本身(而不是子元素) self自己
<div v-on:click.self="doThat">...</div>
配置路由
【承接】
<router-link to="/header">Go to header</router-link>
<router-link to="/footer">Go to footer</router-link>
【路由内容承接】
<router-view></router-view>
【路由配置】
vue使用组件:component('组件名称',组件内容(对象))
vue组件的声明必须放在vue实例化之前
Vue.component('test', {
template: `<div>
<h1>这是一个test组件</h1>
<h1>这是一个test组件</h1>
<div>`
});
//定义(路由)组件。
const header = {
template: '<div>我是header</div>'
};
const footer = {
template: '<div>我是footer</div>'
};
//配置路由
const routes = [{
path: '/header',
component: header
}, {
path: '/footer',
component: footer
}];
//创建 router 实例
const router = new VueRouter({
routes // (缩写)相当于 routes: routes
})
//实例化vue
new Vue({
router,
data: {
}
}).$mount('#myVue')


目录
相关文章
|
17天前
|
数据采集 监控 JavaScript
在 Vue 项目中使用预渲染技术
【10月更文挑战第23天】在 Vue 项目中使用预渲染技术是提升 SEO 效果的有效途径之一。通过选择合适的预渲染工具,正确配置和运行预渲染操作,结合其他 SEO 策略,可以实现更好的搜索引擎优化效果。同时,需要不断地监控和优化预渲染效果,以适应不断变化的搜索引擎环境和用户需求。
|
3天前
|
JavaScript 前端开发
如何在 Vue 项目中配置 Tree Shaking?
通过以上针对 Webpack 或 Rollup 的配置方法,就可以在 Vue 项目中有效地启用 Tree Shaking,从而优化项目的打包体积,提高项目的性能和加载速度。在实际配置过程中,需要根据项目的具体情况和需求,对配置进行适当的调整和优化。
|
3天前
|
存储 缓存 JavaScript
在 Vue 中使用 computed 和 watch 时,性能问题探讨
本文探讨了在 Vue.js 中使用 computed 计算属性和 watch 监听器时可能遇到的性能问题,并提供了优化建议,帮助开发者提高应用性能。
|
3天前
|
存储 缓存 JavaScript
如何在大型 Vue 应用中有效地管理计算属性和侦听器
在大型 Vue 应用中,合理管理计算属性和侦听器是优化性能和维护性的关键。本文介绍了如何通过模块化、状态管理和避免冗余计算等方法,有效提升应用的响应性和可维护性。
|
3天前
|
存储 缓存 JavaScript
Vue 中 computed 和 watch 的差异
Vue 中的 `computed` 和 `watch` 都用于处理数据变化,但使用场景不同。`computed` 用于计算属性,依赖于其他数据自动更新;`watch` 用于监听数据变化,执行异步或复杂操作。
|
3天前
|
JavaScript 前端开发 UED
vue学习第二章
欢迎来到我的博客!我是一名自学了2年半前端的大一学生,熟悉JavaScript与Vue,目前正在向全栈方向发展。如果你从我的博客中有所收获,欢迎关注我,我将持续更新更多优质文章。你的支持是我最大的动力!🎉🎉🎉
|
4天前
|
存储 JavaScript 开发者
Vue 组件间通信的最佳实践
本文总结了 Vue.js 中组件间通信的多种方法,包括 props、事件、Vuex 状态管理等,帮助开发者选择最适合项目需求的通信方式,提高开发效率和代码可维护性。
|
3天前
|
JavaScript 前端开发 开发者
vue学习第一章
欢迎来到我的博客!我是瑞雨溪,一名热爱JavaScript和Vue的大一学生。自学前端2年半,熟悉JavaScript与Vue,正向全栈方向发展。博客内容涵盖Vue基础、列表展示及计数器案例等,希望能对你有所帮助。关注我,持续更新中!🎉🎉🎉
|
4天前
|
存储 JavaScript
Vue 组件间如何通信
Vue组件间通信是指在Vue应用中,不同组件之间传递数据和事件的方法。常用的方式有:props、自定义事件、$emit、$attrs、$refs、provide/inject、Vuex等。掌握这些方法可以实现父子组件、兄弟组件及跨级组件间的高效通信。
|
9天前
|
JavaScript
Vue基础知识总结 4:vue组件化开发
Vue基础知识总结 4:vue组件化开发