最近学习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.js实例

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

  2. vue.js实例对象+组件树

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

  3. vue.js应用开发笔记

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

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

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

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

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

  6. Vue.js和angular.js区别

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

  7. vue.js学习总结

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

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

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

  9. Vue.JS学习基础

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

随机推荐

  1. php实现多任务并发探讨

    如果是后台任务,需要通过队列转换为异步执行 如果是网络任务,可以使用socket_select 或者stream_select来执行(基于select模型) 如果一定要使用多线程可以安装多线程扩展,用 ...

  2. 解决ORA-00054资源正忙的问题

    有时候在drop表或者其他对象的时候,会遇到ORA-00054:资源正忙,要求指定NOWAIT(中文字符集)或者ORA-00054: resource busy and acquire with NO ...

  3. Solr定时更新

    今天用到solr定时重建索引和增量更新技术,就从网上搜了一些资料,在这里给大家整理了一下,也经过了自己的测试,没有异常. Solr官方提供了很强大的Data Import Request Handle ...

  4. http UserAgent

    string uAgent = Request.ServerVariables["HTTP_USER_AGENT"].ToLower();  //获取客户端浏览器的请求 判断 是什 ...

  5. 12.PHP内核探索:PHP的FastCGI

    CGI全称是“通用网关接口”(Common Gateway Interface), 它可以让一个客户端,从网页浏览器向执行在Web服务器上的程序请求数据. CGI描述了客户端和这个程序之间传输数据的一 ...

  6. w win cmd VS broswer

    php -f Fetch data from db , use php without any bugs to analyse the data and read and write db, with ...

  7. scandir 使用示例

    int filter_fn(const struct dirent * ent) {     if (ent->d_type != DT_REG)         return 0;     r ...

  8. (转)web网站架构演变

    浅谈web网站架构演变过程   前言 我们以javaweb为例,来搭建一个简单的电商系统,看看这个系统可以如何一步步演变.   该系统具备的功能:   用户模块:用户注册和管理 商品模块:商品展示和管 ...

  9. C++ 自动指针 共享指针

    #include <iostream> #include <string> #include <memory> class Item { public: Item( ...

  10. eclipse有时候会报错:Cannot change version of project facet Dynamic Web Module to 2.5。这个错误不会影响程序的运行,不过看着总是不舒服。这个问题现在可以解决啦。

    把项目WEB-INF底下的web.xml文件头部的:     <?xml version="1.0" encoding="UTF-8"?> < ...