Vue学习-day02

Vue学习-day02

day02

1. (掌握)JS中数组常用的响应式方法

  • push()方法:在数组最后位置添加元素。可以添加多个元素
  • pop() 方法:删除数组的最后一个元素
  • shift()方法:删除数组的第一个元素
  • unshift()方法:在数组最前面(第一个元素位置)添加元素.可以添加多个元素
  • splice()方法:
    • 删除元素、插入元素、替换元素
  • sort()方法:对数组排序
  • reverse()方法:数组元素进行反转.
<div id='app'>
    <ul>
        <li v-for='item in books'>{
  {item}}</li>
    </ul>
    <button @click="remove">
        删除
    </button>
</div>
<script> new Vue({
     el:'#app', data:{
     books:['java','c#','pythono'] }, methods:{
     remove(){
     this.books.splic(1,3);//第一个参数表示从什么位置开始 //第二个参数表示删除几个元素。如果是0 表示插入。插入的时候,后面要传入要插入的参数 this.books.splic(1,3,"a","b","c");//从1位置替换3个元素 this.books.splic(1,0,'m','n');//从1的位置插入m / n  this.books,splic(0,1,'cccc');//从0 的位置开始替换1个元素,替换的元素为 cccc //使用vue的set方法来修改数组的元素. Vue.set(this.books,0,'ccccc'); } } }) </script>

2. (练习)案例

需求:遍历数组的元素 ,第一个元素展示位红色。点击某个元素,颜色变成红色。

<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>

<style> .active{
     color: red; } </style>

<body>
		<div id="app">
			<ul>
				<li v-for="(item,index) in books" :class="{active:currentIndex===index}" @click="liChange(index)" >
					{
  {item}}
				</li>
			</ul>
			<button @click="replace">替换元素</button>
		</div>
		<script> new Vue({
     el:'#app', data:{
     books:['a','b','c','d','e'], currentIndex:0 }, methods:{
     replace(){
     //this.books.splice(0,0,'mm','nn') this.books.reverse() }, liChange(index){
     this.currentIndex = index } } }) </script>
	</body>

3.(练习)购物车案例

Vue学习-day02

  • 保留两位小数: price.toFixed(2)
  • <button disabled>点击</button>disabled 属性表示不能点击
  • <button :disabled='item.count<=1'>点击</button> 小于等于1的时候不能点击.
  • 计算价格,使用computed计算属性来处理
<body>
		<script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
		<div id="app">
			价格:{
  {price | priceFilter}}
			
			<hr color="red"/>
			
			
			<div v-if="this.bookInfo !=null">
				<span v-for="(item,key,index) in bookInfo" :key="item">
					  {
  {key}}:{
  {item}}<br/>
				</span>
				
				购买数量:
					<button @click="subtraction" :disabled="num===1">-</button>
						[ {
  {num}} ]  
					<button @click="add">+</button>
						
				<br/>
				总价格:{
  {totalPrice}}
				<br/> <a href="#" @click="remove">清空购物车</a>
				 
				
			</div>
			<div v-else>
				购物车里面没有商品
			</div>
		
		</div>
		<script> Vue.filter('priceFilter',function(value){
     return '$'+value.toFixed(2); }); const bookInfo={
     name:'Java编程', price:'39' } new Vue({
     el:"#app", data:{
     price:22, bookInfo, num:1 }, methods:{
     add(){
     this.num++; }, subtraction(){
     this.num--; }, remove(){
     this.bookInfo = null; } }, computed:{
     totalPrice(){
     return this.num*this.bookInfo.price; } }, mounted() {
     alert(this.bookInfo != null) } }) </script>
	</body>

这里是模仿的一个案例,v-for遍历的是一个对象。

3.1 vue的过滤器filter

Vue中的过滤器分为全局过滤器和局部过滤器。

  • 全局过滤器

<div id='app'>
    价格:{
  {price | priceFileter}}
</div>
<script> Vue.filter('priceFileter',function(value){
     return '¥'+ value.toFixed(2) }); new Vue({
     el:'#app', data:{
     price:22 } }) </script>


参考官网API文档:https://cn.vuejs.org/v2/guide/filters.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100734.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java递归和迭代的区别

    java递归和迭代的区别出现栈的溢出.而迭代不会!  递归的基本概念:程序调用自身的编程技巧称为递归,是函数自己调用自己.一个函数在其定义中直接或间接调用自身的一种方法,它通常把一个大型的复杂的问题转化为一个与原问题相似的规模较小的问题来解决,可以极大的减少代码量.递归的能力在于用有限的语句来定义对象的无限集合.使用递归要注意的有两点:1)递归就是在过程或函数里面调用自身;2)在使用递归时,必须有一个明确的递归结束条件,称为递归出口. 递归分为两个阶段:1)递推:把复杂的问题的求解推到比原问

    2022年5月5日
    48
  • 粒子群算法详解

    粒子群算法详解一.产生背景  ❃粒子群算法(particleswarmoptimization,PSO)由Kennedy和Eberhart在1995年提出,该算法对于Hepper的模拟鸟群(鱼群)的模型进行修正,以使粒子能够飞向解空间,并在最好解处降落,从而得到了粒子群优化算法。❃同遗传算法类似,也是一种基于群体叠代的,但并没有遗传算法用的交叉以及变异,而是粒子在解空间追随最优的粒子进行搜索。

    2022年6月10日
    34
  • PHP一句话木马后门

    PHP一句话木马后门在我们进行渗透测试的最后阶段,入侵到内网里,无论是想要浏览网站结构,还是抓取数据库,或者是挂个木马等等,到最后最常用的就是执行一句话木马,从客户端轻松连接服务器。一句话木马的原理很简单,造型也很简单,所以造成了它理解起来容易,抵御起来也容易。于是黑白的较量变成了黑帽不断的构造变形的后门,去隐蔽特征,而白帽则不断的更新过滤方法,建起更高的城墙。一、原理简述对于不同的语言有不同的构造方法。…

    2022年5月21日
    81
  • 使用sqlldr 导入BLOB 数据

    使用sqlldr 导入BLOB 数据

    2021年5月10日
    123
  • JAVA异常_什么什么异常

    JAVA异常_什么什么异常异常问题如下:起初xml中返回值类型是这样子,一直在找返回值类型的问题,怎么看都是没有问题的又改为如下,结果还是不对,查询资料反反复复还是出现这个异常突然一下想到会不会是有重复id名字的sql 我用的是idea,直接全局查询,确实查到了一模一样在别的包下的sql,因为我项目是maven的子工程,就给冲突了;最后还是冒着尝试想法去试了一下,把名字一个,哦吼!美滋滋 问题解决 不在报错以后开发还是需要多注意名字重复的问题的!…

    2022年8月19日
    7
  • 安捷伦(Agilent)示波器使用简介

    安捷伦(Agilent)示波器使用简介安捷伦示波器使用简介

    2022年10月12日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号