vue2.0.js基础开发使用心得(结合实际项目对数据的增删改查)
1.首先申明,没有使用vue 的组件,以及脚手架等,都是一些基础语法的使用。
--------------------------------------------------------------------
2.自己的项目结合使用jquery,首先引入vue2.0.js和jquery
vue2.0下载地址:https://cn.vuejs.org/v2/guide/installation.html --------------------->生产版本
3.建立view层-------------------->静态的html结构
<div class="block-content collapse in" id="stockPool">
<table cellpadding="0" cellspacing="0" border="0" class="table table-striped table-bordered" id="example">
<thead>
<tr>
<th width="20%">中国风</th>
<th width="20%">欧美范</th>
<th width="20%">北极星</th>
<th width="20%">欧洲欣</th>
<th width="20%">操作</th>
</tr>
</thead>
<tbody id="gredysy">
<tr class="odd gradeX" v-for="(el,index) in datas">
<td><input type="text" v-bind:value='formatMomentString(el.createDateTime)' readonly="readonly" v-bind:stockMainId="el.stockMainId"></td>
<td><input type="text" v-bind:value="el.stockId" readonly="readonly"></td>
<td><input type="text" v-bind:value="el.stockName" readonly="readonly"></td>
<td><input type="text" v-bind:value="el.stockRose+'%'" readonly="readonly"></td>
<td><a href="javascript:;" v-on:click="changeState($event)">编辑</a> <a href="javascript:;" v-on:click="saveState($event)">保存</a> </td>
</tr> </tbody>
</table>
<div>
4.建立对应的model------------------>
var model = new Vue({
el: '#stockPool',//view层对应的容器的id
data: {
Isdisabled: true,
datas: {}//--------------------------->需要渲染的数据,开始为空的,需要method中的方法给其传递值
}, methods: {
changeState: function (ev) {
var _this = $(ev.target);//获取当前被点击元素的this ,如果直接使用,那么这个this是指当前model
_this.closest('tr').find('input').removeAttr('readonly');
},
saveState: function (ev) {
var that=this;//那么这个this是指当前model
var _this = $(ev.target);
var _tr=_this.closest('tr').find('input');
if((_tr.attr("readonly"))=="readonly"){
layer.msg('编辑之后才可以保存', {time: 1000, icon: 1});
return false;
}
var dataObj={};
dataObj.createDateTime=_tr.eq('0').val();
dataObj.stockMainId=_tr.eq('0').attr('stockMainId');
dataObj.stockId=_tr.eq('1').val(); dataObj.stockName=_tr.eq('2').val(); dataObj.stockRose=_tr.eq('3').val().replace(/%/g,'');
// xxxxxcode------------->进行ajax请求
},
getAllStock: function () {
var that=this;
var loading = layer.load(1, {shade: [0.8, '#393D49']});
$.ajax({
url: '请求数据地址',
type: 'post',
async: false,
dataType: 'json',
success: function (data) {
that.datas = data.retContent;//------------->给这个model data的datas赋值,这样在view就可以渲染模板
layer.close(loading);
}, error: function (data) {
layer.close(loading);
}
});
}
}
//加载完毕之后,需要执行这个方法,进行页面的首次渲染
注意:
1.数据以及一些属性放在model的data自带属性里面
2.方法放在对应的model的methods自带属性里面
3.如果需要获取当前元素的this,需要给对应的事件传入$event 例如: v-on:click="changeState($event)";
4.methods对应的方法里面的this都是指当前的model
5.绑定的值可以直接使用函数return出来使用 例如:v-bind:value='formatMomentString(el.createDateTime)';把这个数据时间格式化
model.getAllStock();
以上案例使用的v-for,v-bind,v-on,还有v-if,最好是看官网认真学习。
vue2.0.js基础开发使用心得(结合实际项目对数据的增删改查)的更多相关文章
- Node.js + MySQL 实现数据的增删改查
通过完成一个 todo 应用展示 Node.js + MySQL 增删改查的功能.这里后台使用 Koa 及其相应的一些中间件作为 server 提供服务. 初始化项目 $ mkdir node-cru ...
- Django 06 Django模型基础1(ORM简介、数据库连接配置、模型的创建与映射、数据的增删改查)
Django 06 Django模型基础1(ORM简介.数据库连接配置.模型的创建与映射.数据的增删改查) 一.ORM系统 #django模型映射关系 #模型类-----数据表 #类属性-----表字 ...
- 【温故知新】Java web 开发(四)JSTL 与 JDBC 的增删改查
本篇开始使用 jstl 这个 jsp 的标签库,在同一个 Servlet 中实现处理 CRUD 请求,以及使用 jdbc 数据库基本操作.然后你会发现 Servlet 和 jdbc 还是有很多不方便之 ...
- Django——6 模型基础ORM 数据库连接配置 模型的创建与映射 数据的增删改查
Django Django的ORM简介 数据库连接配置 模型的创建与映射 数据库的增删改查 增数据 查数据及补充 改数据 删数据 Django的ORM系统分析 ORM概念:对象关系映射(Objec ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 自定义仓储之增删改查
上一篇文章(https://www.cnblogs.com/meowv/p/12913676.html)我们用Code-First的方式创建了博客所需的实体类,生成了数据库表,完成了对EF Core的 ...
- mysql基础之mariadb对表中数据的增删改查
复习: 查看表:show tables; 创建表:create table 表名(字符类型); 删除表:drop table 表名; 对表的结构进行增删改查: 查看表结构:desc 表名; 修改表-添 ...
- SpringBoot2.0 基础案例(15):配置MongoDB数据库,实现增删改查逻辑
本文源码:GitHub·点这里 || GitEE·点这里 一.NoSQL简介 1.NoSQL 概念 NoSQL( Not Only SQL ),意即"不仅仅是SQL".对不同于传统 ...
- 巨蟒python全栈开发django5:组件&&CBV&FBV&&装饰器&&ORM增删改查
内容回顾: 补充反向解析 Html:{% url ‘别名’ 参数 %} Views:reverse(‘别名’,args=(参数,)) 模板渲染 变量 {{ 变量名 }} 逻辑相关 {% %} 过滤器: ...
- SQL 基础语法(创建表空间、用户、并授予权限、数据的增删改查) --(学习笔记)[转]
--创建表空间 名:lyayzh_test create tablespace lyayzh_test --创建表数据文件 名:lyayzh_test_data.dbf 必须以dbf为后缀 dataf ...
随机推荐
- uva 10733 The Colored Cubes<polya定理>
链接:http://uva.onlinejudge.org/external/107/10733.pdf 题意: N 种颜色可以涂成多少种立方体~ 思路: 使正六面体保持不变的运动群总共有: 1.不变 ...
- Python: lambda, map, reduce, filter
在学习python的过程中,lambda的语法时常会使人感到困惑,lambda是什么,为什么要使用lambda,是不是必须使用lambda? 下面就上面的问题进行一下解答. 1.lambda是什么? ...
- 九度OJ 1122:吃糖果 (递归)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:1522 解决:1200 题目描述: 名名的妈妈从外地出差回来,带了一盒好吃又精美的巧克力给名名(盒内共有 N 块巧克力,20 > N ...
- 7-10 社交网络图中结点的“重要性”计算(30 point(s)) 【并查集+BFS】
7-10 社交网络图中结点的"重要性"计算(30 point(s)) 在社交网络中,个人或单位(结点)之间通过某些关系(边)联系起来.他们受到这些关系的影响,这种影响可以理解为网络 ...
- Masonry库的使用
Github 简要 自动布局最重要的是约束:UI元素间关系的数学表达式.约束包括尺寸.由优先级和阈值管理的相对位置.它们是添加剂,可能导致约束冲突 .约束不足造成布局无法确定 .这两种情况都会产生异常 ...
- CentOS(Linux) - 安装软件笔记(总) - 开发环境安装顺序及汇总
1.安装java环境 参考文章 CentOS7.1 使用资源搜集 2.需要可视化管理服务器时,需要先安装VPSmate 参考文章 CentOS(Linux) - 安装软件笔记(一) - VPSMate ...
- Codeforces Round #374 (Div. 2) A. One-dimensional Japanese Crossword —— 基础题
题目链接:http://codeforces.com/contest/721/problem/A A. One-dimensional Japanese Crossword time limit pe ...
- 安装Nginx四层负载均衡
Nginx1.9开始支持tcp层的转发,通过stream实现的,而socket也是基于tcp通信. stream模块默认不安装的,需要手动添加参数:–with-stream,官方下载地址:downlo ...
- FLV文件格式解析(转)
FLV(Flash Video)是现在非常流行的流媒体格式,由于其视频文件体积轻巧.封装播放简单等特点,使其很适合在网络上进行应用,目前主流的视频网站无一例外地使用了FLV格式.另外由于当前浏览器与F ...
- 客户端调用cxf发布的服务
import java.util.ArrayList; import java.util.List; import javax.xml.namespace.QName; import org.apac ...