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 ...
随机推荐
- 九度OJ 1093:WERTYU (翻译)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:1563 解决:609 题目描述: A common typing error is to place the hands on the ke ...
- mongodb学习之:安全和认证
mongodb默认是不认证的,默认没有账号,只要能连接上服务就可以对数据库进行各种操作,mongodb认为安全最好的方法就是在一个可信的环境中运行它,保证之后可信的机器才能访问它.因此需要在登录的时候 ...
- Android 反编译工具
想必玩安卓的童鞋大多都知道,安卓的APK安装包是可以反编译出源代码的,如果开发人员发布时没有对其混淆等加密处理,反编译出来的代码几乎与真实的源代码一模一样. 想要反编译apk,需要用到apktool. ...
- 查看ubuntu磁盘空间占用及占用空间大的文件
最近老是收到 ecs上有台服务器的磁盘利用率高 终于有一天 ssh登不上去了 http://blog.csdn.net/aaashen/article/details/50685988 清除相关大文件 ...
- include vector 编译出错VC++
error C2665: “operator new” : 5个重载中没有一个可以转换参数1(从“const char [71]”类型)这个错误是怎么回事啊,搜索了整个项目好像没有可疑的new操作阿. ...
- UVa 11572 唯一的雪花(优化策略)
题目描述: 输入一个长度为n(n<=1000000)的序列A, 找到一个尽量长的连续子序列A(L)-->A(R),是的该序列中没有相同的元素. 输入: T:代表组数 n:代表有n个数 这一 ...
- Sublime Text 相关教程(转)
曾经有人说过,世界上有两种编辑器,好用和不好用的:而在好用的编辑器中,又分两种,免费的和死贵死贵的.譬如说VIM 和 TextMate,就是免费和死贵的典型.很不幸,今天的主角 Sublime Tex ...
- python 快速排序 qsort
def qsort(arr, start, end): if start > end: return def partition(arr, start, end): pivot = arr[st ...
- python berkeley 操作——尤其提示 需版本匹配
python berkeley 操作 先到http://www.oracle.com/technetwork/database/database-technologies/berkeleydb/dow ...
- 如何创建WindowsService
创建Windows Service可分为以下几步: 1. 创建一个“Windows Service”项目 2. 设置服务的相关属性,以确定服务的名称及工作机制 属性 设置 ServiceName 服务 ...