2 Vue.js基础
1 简易计算器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="lib/vue.js"></script>
</head>
<body> <div id="app" v-model="opt">
<input type="text" v-model="n1"> <select v-model="opt">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option> </select >
<input type="text" v-model="n2"> <input type="button" value="=" @click="calc"> <input type="text" v-model="result"> </div> <script>
var vm=new Vue({
el:'#app',
data:{
n1:0,
n2:0,
result:0,
opt:'+'
},
methods:{
calc(){
/*
switch (this.opt) {
case '+':
this.result = parseInt(this.n1) + parseInt(this.n2)
break;
case '-':
this.result = parseInt(this.n1) - parseInt(this.n2)
break;
case '*':
this.result = parseInt(this.n1) * parseInt(this.n2)
break;
case '/':
this.result = parseInt(this.n1) / parseInt(this.n2)
break; default:
break;
*/
//正式项目不推荐下面的写法
var codeStr='parseInt(this.n1)' + this.opt + 'parseInt(this.n2)'
this.result =eval(codeStr)
} }
} )
</script>
</body>
</html>
2. Vue中的样式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="lib/vue.js"></script>
<style>
.red{
color: red;
}
.thin{
font-weight: 200;
}
.italic{
font-style: italic
}
.active{
letter-spacing: 0.5em;
}
</style>
</head>
<body>
<div id="app">
<!-- <h1 class="red thin">这是一个H1!!!</h1> --> <!--第一种使用方法,直接传递一个数组进去,必须用单引号来分开才会认为这是一个变量,否则会直接默认为是一个字符串-->
<!-- <h1 :class="['red','italic']">这是一个H1!!!</h1> --> <!--在数组中使用三元表达式-->
<!-- <h1 :class="['red','italic',flag?'active':'']">这是一个H1!!!</h1> --> <!--用对象的形式来代替三元表达式-->
<!-- <h1 :class="['red','italic',{'active':flag}]">这是一个H1!!!</h1> --> <!-- 直接使用对象,或者也可以直接把classobj中的内容 直接放到class中--> <h1 :class="calssobj">这是一个H1!!!</h1> </div> <script>
var vm=new Vue({
el:"#app",
data:{
flag:true,
calssobj:{red:true,thin:true,italic:false,active:false}
},
methods:{ }
})
</script>
</body>
</html>
3. Vue的Class样式的使用
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="lib/vue.js"></script>
<style>
.red{
color: red;
}
.thin{
font-weight: 200;
}
.italic{
font-style: italic
}
.active{
letter-spacing: 0.5em;
}
</style>
</head>
<body>
<div id="app">
<!-- <h1 class="red thin">这是一个H1!!!</h1> --> <!--第一种使用方法,直接传递一个数组进去,必须用单引号来分开才会认为这是一个变量,否则会直接默认为是一个字符串-->
<!-- <h1 :class="['red','italic']">这是一个H1!!!</h1> --> <!--在数组中使用三元表达式-->
<!-- <h1 :class="['red','italic',flag?'active':'']">这是一个H1!!!</h1> --> <!--用对象的形式来代替三元表达式-->
<!-- <h1 :class="['red','italic',{'active':flag}]">这是一个H1!!!</h1> --> <!-- 直接使用对象,或者也可以直接把classobj中的内容 直接放到class中--> <h1 :class="calssobj">这是一个H1!!!</h1> </div> <script>
var vm=new Vue({
el:"#app",
data:{
flag:true,
calssobj:{red:true,thin:true,italic:false,active:false}
},
methods:{ }
})
</script>
</body>
</html>
4. Vue的v-for的使用
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="lib/vue.js"></script> </head>
<body>
<div id="app">
<!-- <p>{{list[0]}}</p>
<p>{{list[1]}}</p>
<p>{{list[2]}}</p>
<p>{{list[3]}}</p>
<p>{{list[4]}}</p>
<p>{{list[5]}}</p> --> <!-- <p v-for="(item,i) in list">索引:{{i}}--{{item}}</p> -->
<p v-for="(user,i) in LT">ID:{{user.ID}} --- name:{{user.name}} --- index:{{i}}</p> </div> <script>
var vm=new Vue({
el:'#app',
data:{
list:[1,2,3,4,5,6,],
LT:[
{ID:1,name:'11'},
{ID:2,name:'22'},
{ID:3,name:'33'},
{ID:4,name:'44'} ]
},
methods:{}
})
</script> </body>
</html>
5. Vue v-for对象以及key的使用
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="lib/vue.js"></script> </head>
<body>
<div id="app">
<!-- 遍历对象身上的键值对时 除了val,key还有一个索引i -->
<!-- <p v-for="(val,key,i) in user"> 值:{{val}} --- 键:{{key}} 索引:{{i}}</p> -->
<!-- <p v-for="count in 10">这是第 {{count}} 次循环</p> //循环数字,起始是1 --> <!-- for循环的key的使用 -->
<div>
<label >Id:
<input type="text" v-model="id">
</label> <label>Name:
<input type="text" v-model="name">
</label>
<input type="button" value="添加" @click="add">
</div> <!-- 1 在使用key的时候一定要使用v-bind属性绑定形式,制定key的值
2 在组建中,使用v-for循环的时候,或者在一些特殊情况中,如果v-for有问题必须在使用v-for的同时,
制定唯一的字符串/数字类型:key值 -->
<p v-for="item in list" :key="item"> <!-- 可以保证数据的唯一性 -->
<input type="checkbox">{{item.id}} --- {{item.name}}
</p> </div> <script>
var vm=new Vue({
el:'#app',
data:{
list:[
{id:1,name:'唐'},
{id:2,name:'宋'},
{id:3,name:'元'},
{id:4,name:'明'},
{id:5,name:'清'}
]
},
methods:{
add(){
this.list.unshift({id:this.id,name:this.name});
}
}
})
</script> </body>
</html>
6. Vue的v-if和v-show的使用
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="lib/vue.js"></script>
</head>
<body> <div id="app">
<input type="button" value="点击" @click="flag=!flag">
<!--
v-if的特点:每次都会重新删除或创建元素 有较高的切换性能消耗
v-show的特点:每次不会进行DOM的删除或创建操作,只是切换了元素的display:nene的属性 有较高的初始或渲染消耗
如果元素要频繁的切换最好不要使用v-if
如果是永久性的不显示,则推荐v-if
-->
<P v-if="flag">Hello</P>
<p v-show="flag">Word</p>
</div> <script>
//2.创建一个Vue实例
//当我们带入包之后,在浏览器内存中就多了一个Vue构造函数
var vm =new Vue(
{
el:'#app',
data :{
flag:true
}
}
) </script>
</body>
</html>
2 Vue.js基础的更多相关文章
- Vue.js 基础指令实例讲解(各种数据绑定、表单渲染大总结)——新手入门、高手进阶
Vue.js 是一套构建用户界面的渐进式框架.他自身不是一个全能框架--只聚焦于视图层.因此它非常容易学习,非常容易与其它库或已有项目整合.在与相关工具和支持库一起使用时,Vue.js 也能完美地驱动 ...
- Vue.js基础拾遗
本篇目录: 模版语法 插值 指令 v-bind指令 v-on指令 计算属性与侦听器 计算属性VS方法 计算属性VS侦听属性 Class与Style绑定 绑定HTML Class 绑定内联样式 条件渲染 ...
- Vue.js 基础快速入门
Vue.js是一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的.Vue.js提供了简洁.易于理解的API,使得我们能够快速地上手并使用Vue.js 如果之前已经习惯了用jQue ...
- Vue.js基础语法(三)
vue学习的一系列,全部来自于表哥---表严肃,是我遇到过的讲课最通透,英文发音最好听的老师,想一起听课就去这里吧 https://biaoyansu.com/i/hzhj1206 1过滤器filte ...
- 两万字Vue.js基础学习笔记
Vue.js学习笔记 目录 Vue.js学习笔记 ES6语法 1.不一样的变量声明:const和let 2.模板字符串 3.箭头函数(Arrow Functions) 4. 函数的参数默认值 5.Sp ...
- 记录21.07.22 —— Vue.js基础(一)
VUE基础 语雀课件地址 Vue.js框架 Vue中文文档 Vue.js 创建vue项目 ①在一个空项目中引入vue的js文件 <script src="https://cdn.jsd ...
- 一份不错的vue.js基础笔记!!!!
第一章 Vue.js是什么? Vue(法语)同view(英语) Vue.js是一套构建用户界面(view)的MVVM框架.Vue.js的核心库只关注视图层,并且非常容易学习,非常容易与其他库或已有的项 ...
- Vue.js 基础示例
为 Vue.js 初学者写了一些简单的示例,在线示例 示例源码 了解更多请查看 Vue.js 官网文档:http://vuejs.org.cn/guide/
- vue.js基础知识篇(7):表单校验详解
目录 网盘 第12章:表单校验 1.npm安装vue-validator $ npm install vue-validator 代码示例: var Vue=require("vue&quo ...
- vue.js基础知识篇(6):组件详解
第11章:组件详解 组件是Vue.js最推崇也最强大的功能之一,核心目标是可重用性. 我们把组件代码按照template.style.script的拆分方式,放置到对应的.vue文件中. 1.注册 V ...
随机推荐
- losetup - 设 定 与 控 制 环回设备
总览 SYNOPSIS losetup [ -e encryption ] [ -o offset ] loop_device file losetup [ -d ] loop_device 描述 l ...
- nginx之热部署,以及版本回滚
热部署的概念:当从老版本替换为新版本的nginx的时候,如果不热部署的话,会需要取消nginx服务并重启服务才能替换成功,这样的话会使正在访问的用户在断开连接,所以为了不影响用户的体验,且需要版本升级 ...
- pandas进阶
pandas是基于numpy构建的库,在数据处理方面可以把它理解为numpy的加强版,由于numpy主要用于科学计算,特长不在于数据处理,我们平常处理的数据一般带有列标签和index索引,这时pand ...
- ubuntu16.04下docker安装和简单使用(转)
ubuntu16.04下docker安装和简单使用 转自:https://www.cnblogs.com/hupeng1234/p/9773770.html 前提条件 操作系统 docker-ce ...
- note 2019.12.16
1.无序 HTML 列表: <ul> <li>Coffee</li> <li>Tea</li> <li>Milk</li& ...
- 6377. 【NOIP2019模拟2019.10.05】幽曲[埋骨于弘川]
题目描述 题解 随便bb 详细题解见 https://www.cnblogs.com/coldchair/p/11624979.html https://blog.csdn.net/alan_cty/ ...
- Quick BI支持哪些数据源(配置操作篇)
Quick BI 潜心打造了核心技术底座(OLAP分析引擎),实现了SQL解析.SQL调度.SQL优化.查询加速等基础能力,支撑Quick BI的数据分析和查询加速.OLAP分析引擎包括数据源连接.数 ...
- java.util.Properties的使用及读取资源文件
1.工具类Utils package com.oy.utils; import java.io.BufferedInputStream; import java.io.Closeable; impor ...
- codevs 1098 均分纸牌 2002年NOIP全国联赛提高组 x
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 有 N 堆纸牌,编号分别为 1,2,…, N.每堆上有若干张,但纸牌总数必 ...
- Python_016(面向对象之属性和类方法)
一.特性(property,setter,deleter) 1.属性:将一个方法伪装成一个属性,在代码级别上没有本质的提升,但是看起来更合理; class Person: def __init__(s ...