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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 安捷伦频谱仪n9010a_安捷伦频谱仪LAN设置

    安捷伦频谱仪n9010a_安捷伦频谱仪LAN设置频谱仪操作说明按键输入所测6个频点的中心频率。(注:与步骤8对应,若所测频点为4临频输出,此处频率=第一个频点中心频率+12MHz;若所测频点为6临频输出,此处频率=第一个频点中心频率+20MHz;)20.点击“AMPTD”对应的右侧按键,液晶屏右侧出现一列选项;21.点击“Attenuation”对应的右侧按键,左右旋转按键矩阵中的旋钮键,使得频谱两边的值载噪比最大,此值即为设备的载噪比六.…

    2022年8月11日
    3
  • Elastic:开发者上手指南

    Elastic:开发者上手指南您们好,我是Elastic的刘晓国。如果大家想开始学习Elastic的话,那么这里将是你理想的学习园地。在我的博客几乎涵盖了你想学习的许多方面。在这里,我来讲述一下作为一个菜鸟该如何阅读我的这些博客文章。我们可以按照如下的步骤来学习:1)Elasticsearch简介:对Elasticsearch做了一个简单的介绍2)Elasticsearch中的一些重要概念:cluster,n…

    2022年6月13日
    23
  • selenium面试题总结——测试经验分享

    selenium面试题总结——测试经验分享selenium上传文件操作,需要被操作对象的type属性是什么?

    2022年6月20日
    39
  • 电脑中恶意插件后自动安装软件一般有哪些?(软件及安装路径整理中,持续更新)

    电脑中恶意插件后自动安装软件一般有哪些?(软件及安装路径整理中,持续更新)使用windows系统的小伙伴经常会下载安装各种软件,可能非官网途径获取的软件中带有恶意插件导致系统各种弹窗并伴随着各种垃圾软件的自动安装。下面就常见的恶意软件安装路径整理,持续更新C盘 ProgramFiles EXEDOWN servicewin.exe ProgramFiles(x86) AppInsghtesly W…

    2022年4月30日
    72
  • vscode配置java环境变量_vscode java环境

    vscode配置java环境变量_vscode java环境VScode配置Java环境小白成功配置完Java环境后的自我记录VScode下载在vscode官网:https://code.visualstudio.com/选择相应版本下载安装JDK下载vscode仅支持JDK11及以上版本JDK11下载:https://www.oracle.com/java/technologies/javase-jdk11-downloads.html可选择其他更高版本配置环境变量找到JDK安装的文件路径,复制文件路径在桌面上找到此电脑右键属性点

    2022年9月27日
    0
  • java中string转date类型_cookie和session区别

    java中string转date类型_cookie和session区别注意事项格式描述字符串为”yyyy-MM-dd”特别提醒:月份描述字符串为大写的M。importjava.text.SimpleDateFormat;importjava.util.Date;publicDatedateFromString(StringdateStr){ SimpleDateFormatsimpleDateFormat=newSimp…

    2022年10月3日
    0

发表回复

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

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