Vue.js实例练习

时间:2022-05-03 13:04:23

最近学习Vue.js感觉跟不上节奏了,Vue.js用起来很方便。

主要实现功能,能添加书的内容和删除。(用的Bootstrap的样式)demo链接

标题用了自定义组件,代码如下:

components: {
'my-title': {
template: '<h1 v-text="title"></h1>',
data: function () {
return {
title: 'Vue.js 实例练习 Bootstrap样式'
}
}
}
}

增加书的内容和表格用的都是指令+列表渲染,vue.js构造单页面应用确实很方便。

Vue.js提供的指令很快的渲染想要的内容。这里主要用了v-for嵌套使用。

v-for还包含2个特殊变量:$index,$key。能遍历数组和对象。 全部代码如下:

<!DOCTYPE html>
<html">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title> </head>
<body>
<style>
#app {
width: 990px;
padding: 0 15px;
margin: 0 auto;
}
</style>
<div id="app">
<my-title></my-title>
<div id="divTblBook">
<table class="table table-hover">
<thead>
<tr>
<th v-for="b in bookShow">{{ b }}</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr v-for="item in books">
<td v-for="b in item">{{ item[$key] }}
</td>
<td>
<button class="btn btn-primary" v-on:click="delBook(item)">删除</button>
</td>
</tr>
</tbody>
</table>
</div>
<div id="divAddBook">
<p>添加书籍</p>
<div v-for="b in bookShow">
<div class="form-group">
<label>{{ b }}</label>
<input type="text" class="form-control" v-model="book[$key]">
</div>
</div>
<button class="btn btn-primary" v-on:click="addBook()">添加</button>
</div>
</div>
<link href="http://apps.bdimg.com/libs/bootstrap/3.3.4/css/bootstrap.css" rel="stylesheet" />
<script src="http://apps.bdimg.com/libs/vue/1.0.14/vue.js"></script>
<script>
var vm = new Vue({
el: "#app",
components: {
'my-title': {
template: '<h1 v-text="title"></h1>',
data: function () {
return {
title: 'Vue.js 实例练习 Bootstrap样式'
}
}
}
},
data: {
books: [{
author: '曹雪芹',
name: '红楼梦',
price: 32.0
}, {
author: '施耐庵',
name: '水浒传',
price: 30.0
}, {
author: '罗贯中',
name: '三国演义',
price: 24.0
}, {
author: '吴承恩',
name: '西游记',
price: 20.0
}],
book: {
Name: '',
Author: '',
price: ''
},
bookShow: {
Name: "书名",
Author: "作者",
price: "价格"
}
},
methods: {
addBook: function () {
this.books.push(this.book);
this.book = "";
},
delBook: function (book) {
this.books.$remove(book);
}
}
})
</script>
</body>
</html>

Vue.js实例练习的更多相关文章

  1. Vue&period;js实例

    构造器 每个 Vue.js 应用都是通过构造函数 Vue 创建一个 Vue 的根实例 启动的: var vm = new Vue({ // 选项 })

  2. vue&period;js实例对象&plus;组件树

    vue的实例对象 首先用js的new关键字实例化一个vue el: vue组件或对象装载在页面的位置,可通过id或class或标签名 template: 装载的内容.HTML代码/包含指令或者其他组件 ...

  3. vue&period;js应用开发笔记

    看vue.js有几天了,之前也零零散散的瞅过,不过一直没有动手去写过demo,这几天后台事比较少,一直在讨论各种需求(其实公司对需求还是比较重视与严谨的,一个项目需求讨论就差不多一周了,这要搁之前,天 ...

  4. 用Vue&period;js开发微信小程序:开源框架mpvue解析

    前言 mpvue 是一款使用 Vue.js 开发微信小程序的前端框架.使用此框架,开发者将得到完整的 Vue.js 开发体验,同时为 H5 和小程序提供了代码复用的能力.如果想将 H5 项目改造为小程 ...

  5. Vue&period;js 2&period;x笔记:基本语法(2)

    1. Vue实例及选项 1.1 创建Vue实例(new Vue instance) 每个Vue Application必须创建一个root Vue Instance. <script> v ...

  6. Vue&period;js和angular&period;js区别

    Vue.js:易学 简单 指令以v.xxx 一片HTML代码配合json,在new出来Vue,js实例 个人维护项目 适用于移动端 应用超越了angular angular.js:上手难 指令以ng. ...

  7. vue&period;js学习总结

    下面使用的命令工具为git bash 使用命令行工具搭建vue.js项目 vue.js官网命令行工具安装 为了提升安装速度,建议将 npm 的注册表源设置为国内的镜像 1.输入命令:npm insta ...

  8. Vue&period;js教程—1&period;介绍和安装

    Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架.Vue 只关注视图层, 采用自底向上增量开发的设计.Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定 ...

  9. Vue&period;JS学习基础

      = 导航   顶部 vue.js介绍 vue.js实例 模板语法 计算属性 样式绑定 条件渲染 列表渲染 事件处理器 表单控件绑定 组件   顶部 vue.js介绍 vue.js实例 模板语法 计 ...

随机推荐

  1. (原)3&period;3 Zookeeper应用 - 负载均衡

    本文为原创文章,转载请注明出处,谢谢 负载均衡 1.原理 服务端启动创建临时节点(下图中servers下节点),临时节点数据包含负载信息 客户端启动获取服务器列表,并根据负载去连接一个负载较轻的服务器 ...

  2. iPhone与iPad在开发上的区别

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  3. mysql行列调换方法

    行变列,列变行 财务样式模板: CREATE TABLE `grade` ( `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `name` VARCHAR ...

  4. Oracle查看锁表

     查看锁表进程SQL语句1: select sess.sid,     sess.serial#,     lo.oracle_username,     lo.os_user_name,     a ...

  5. 【转】android去掉EditView的默认焦点问题

    原文网址:http://www.111cn.net/sj/android/54680.htm 做一个输入框时发现android中EditView的默认焦点了,这种问题如果是在输入框还好,但在搜索页面或 ...

  6. Cacti添加Advance Ping监控模板

    Cacti脚本   1.Advance Ping 脚本及模板   注:要使用此模板,编译PHP时必须加上--enable-sockets选项来支持套接字.   1).功能:此模板用来监控一个TCP/U ...

  7. Microsoft解读

    微软-这个在软件行业影响着我们这个时代 我们所了解的微软或许只在于windows操作系统和office办公软件.但是我们如果只这样认为,那就大错特错了,微软能成为全球互联网巨头,并不是那么简单.今天我 ...

  8. poj-1061-exgcd

    青蛙的约会 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 128285   Accepted: 27962 Descript ...

  9. Docker容器学习与分享03

    Docker容器的基本操作 所有的docker命令都是以docker开头,也就是指调用docker程序.我学习的第一个命令就是docker run,运行一个容器.以Docker分享02中的容器为例: ...

  10. 死磕nginx系列--使用upsync模块实现负载均衡

    问题描述 nginx reload是有一定损耗的,如果你使用的是长连接的话,那么当reload nginx时长连接所有的worker进程会进行优雅退出,并当该worker进程上的所有连接都释放时,进程 ...