- 第八章 【前端】Mock.js(8.2)——数据模板定义规范 DTD
yu玉米mi
前端vue.js
8.2数据模板定义规范DTD数据模板中的每个属性由3部分构成:属性名、生成规则、属性值://'属性名|生成规则':属性值'name|rule':value属性名和生成规则之间用竖线|分隔。生成规则是可选的,生成规则有7种格式:‘name|min-max’:value‘name|count’:value‘name|min-max.dmin-dmax’:value‘name|min-max.dcoun
- Vue项目中使用Mock.js进行API模拟
洛可可白
前端专栏javascriptvue.js前端
Vue项目中使用Mock.js进行API模拟前言欢迎来到我的小天地,这里是我记录技术点滴、分享学习心得的地方。️技能清单编程语言:Java、C、C++、Python、Go、前端技术:Jquery、Vue.js、React、uni-app、EchartsUI设计:Element-ui、Antd、Color-ui后端技术:SpringBoot、Mybatis-plus、Swagger移动开发:Andr
- vue3中mockjs模拟获取数据
前端小趴菜05
前端vue.jsjavascript
开发项目的时候,如果后端接口没有出来,前端工程师也不必非得等接口出来才进行下步开发。可以使用mock.js来模拟接口数据,以下就是使用vue3设置hook函数来封装axios请求,配合mock.js来实现的代码,mock的官网Mock.js一.mockjs安装npminstallmockjs--save二.在src下创建mock\index.js配置文件importMockfrom'mockjs'
- Mock.js
dawn
JavaScriptnode.jsjavascript开发语言mock.js
在开发后端的应用中,我们使用postman来测试接口,观察和验证前后端之间的数据传递是否正常。在开发前端的应用中,我们使用Mock.js来模拟后端服务,以便进行前端业务逻辑的开发和测试(以前使用json-server也很方便)。一般情况下,个人开发或者小团队开发是前后端分离的,各自完成后再集中组合测试,之前都是各自独立完成。虽然现在的开发者一般都是全栈(全端)的,但是提供一个完整的后端服务也不是一
- 在vue-cli项目设置代理proxyTable
Angrybird233
问题描述:同一个页面可能需要调用后台的好几个接口,没有文档给出的固定的接口时,类似与http://xxxxxx.com/1/picture?method=upload这种的,或者前端本地开发需要模拟完成后端返回数据,结合mock.js,即可返回假数据,完成开发适用项目:vue项目项目开发,使用vue-cli构建工具解决办法:使用vue-cli生成的开发环境,直接修改config/index.js文
- Tdesign 常用知识
fvafuc
tdesign学习前端
Mock数据中的常见随机数:mock数据中,@开头的是Mock.js的语法。Mock.js是一个用于生成随机数据的库,它提供了一些特殊的语法,可以方便地生成各种类型的随机数据。在这个mock数据中,使用了以下语法:@natural(min,max):生成一个指定范围内的自然数。@city():随机生成一个城市名。@date(format):生成一个指定格式的日期字符串。@cname():随机生成一
- 如何使用mock.js实现接口测试的自动化?
测试小贝
javascript自动化开发语言测试用例功能测试
Mock.js基础用法介绍Mock.js是一个常用于生成随机数据和拦截Ajax请求的JavaScript库。本文将介绍Mock.js的用法,包括安装和基础用法,在开始前我们可以看下看:了解Mock.js的语法规范。安装可以通过npm安装Mock.js:npminstallmockjs基础用法随机生成一个用户信息使用Mock.js可以很方便地生成随机数据。下面的示例中,每个用户信息包括随机生成的中文
- mock.js在vue中的应用
岁月神偷___
什么是mock.js在前后端分离的开发环境中,前端同学需要等待后端同学给出接口及接口文档之后,才能继续开发。而MockJS可以让前端同学独立于后端同学进行开发,前端同学可以根据业务先梳理出接口文档并使用MockJS模拟后端接口。那么MockJS是如何模拟后端接口的呢?MockJS通过拦截特定的AJAX请求,并生成给定的数据类型的随机数,以此来模拟后端同学提供的接口。安装mock.js和axiosn
- vue+mock.js实现前后端分离
坏丶毛病
之前都是介绍在普通项目中使用mock.js,那么本次就来介绍一下在vue中使用mock.js实现前后端分离。安装:npminstallmockjs这里先写个小案例介绍一下具体使用,写法不规范,仅供参考。然后案例讲完后我们讲具体的规范使用那么一起来看看这个案例吧:importMockfrom"mockjs"exportdefault{name:"FunctionsDbSource",methods:
- mockjs使用(1)
伊昂呀
mockjs前端html5css3vue.js
mockjs使用1、定义Mock.js是一款模拟数据生成器,旨在帮助前端攻城师独立于后端进行开发,帮助编写单元测试。提供了以下模拟功能:根据数据模板生成模拟数据模拟Ajax请求,生成并返回模拟数据基于HTML模板生成模拟数据2、各环境下怎么使用大致就是引入/安装mockjs然后还用2.1浏览器//使用Mockvardata=Mock.mock({'list|1-10':[{'id|+1':1}]}
- 接口测试-使用mock生产随机数据
潇潇说测试
软件测试功能测试软件测试自动化测试程序人生职场和发展
在做接口测试的时候,有的接口需要进行大量的数据进行测试,还不能是重复的数据,这个时候就需要随机生产数据进行测试了。这里教导大家使用mock.js生成各种随机数据。一、什么是mock.jsmock.js是用于生成随*机数据,拦截Ajax请求。通过拦截Ajax请求,根据数据模板生成并返回模拟数据,让前端攻城师独立于后端进行开发,帮助编写单元测试。1、增加单元测试的真实性通过随机数据,模拟各种场景。2、
- Mock.js使用并且添加到数据库中
小安吖~
javascript开发语言ecmascript
Mock.js是一款前端开发中拦截Ajax请求再生成随机数据响应的工具.可以用来模拟服务器响应.优点是非常简单方便,无侵入性,基本覆盖常用的接口数据类型。如向数据库添加数据,一条一条添加太麻烦,就可以利用Mock.js自动生成1.使用npm安装npminstallmockjs;2.导入varMock=require("mockjs");3.自动生产数据constRandom=require('mo
- 第十三节 MockJs的定义、安装及使用
hongc93
vue3elementPlusmock后台管理系统vue.js前端javascriptelementui
系列文章目录目录系列文章目录前言MockJs定义MockJs安装MockJs使用模拟登陆接口MockJs常用语法MockJs方法总结前言这节主要介绍项目配置mockJs并模拟实现接口。并介绍了Mock相关的方法和常用语法。接下来会介绍如何使用配置axios,用axios请求登录接口并接收到接口返回的数据。MockJs介绍Mock.js是一个模拟数据生成器,常用于前端开发中。它的主要作用是生成用于测
- 首页导航+左侧菜单
weixin_38170065
javascript前端后端ViewUI
1.Mock.js前后端分离开发开发过程当中,经常会遇到以下几个尴尬的场景:1.老大,接口文档还没输出,我的好多活干不下去啊!2.后端小哥,接口写好了没,我要测试啊!前后端分离之后,前端迫切需要一种机制,不再需要依赖后端接口开发,而今天的主角mockjs就可以做到这一点Mock.js是一个模拟数据的生成器,用来帮助前端调试开发、进行前后端的原型分离以及用来提高自动化测试效率。众所周知Mock.js
- SPA项目开发之首页导航+左侧菜单
Vicant 蒋勇
一、SPA项目开发之首页导航+左侧菜单1.Mock.js前后端分离之后,前端迫切需要一种机制,不再需要依赖后端接口开发,而今天的主角mockjs就可以做到这一点Mock.js是一个模拟数据的生成器,用来帮助前端调试开发、进行前后端的原型分离以及用来提高自动化测试效率。众所周知Mock.js因为两个重要的特性风靡前端:数据类型丰富支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等。拦截
- 后端返回文件流乱码,responseType:‘blob‘无效的问题
jsPao
javascript开发语言ecmascript
项目中使用的mock.js模拟数据,http请求库使用的是axios,业务场景是请求后台接口,返回二进制数据,展示为图片。此时使用的是正式数据,仅仅是引入了mock并没有使用,结果前端展示不出来。首先想到的是后台返回的格式本身是错误的,通过在后台打开发现没问题。后来考虑axios设置content-type:blob和arraybuffer不同的问题,发现也不是。然后考虑axios设置respon
- mock.js 的介绍与使用
无言_f70a
1.mockjs介绍Mock.js(官网地址:http://mockjs.com/)是一款模拟数据生成器,旨在帮助前端工程师独立于后端进行开发,帮助编写单元测试。提供了以下模拟功能:1,根据数据模板生成模拟数据2,模拟Ajax请求,生成并返回模拟数据3,基于HTML模板生成模拟数据2.mockjs的使用1.安装mock2.在src下新建一个mock文件引入mock.js3.在页面中发送请求4.在m
- 推荐几个免费的HTTP接口Mock网站和工具
大龄码农有梦想
Java开发httpmock假数据mock.jsJSONPlaceholderJSON-Server
在前后端分离开发架构下,经常遇到调用后端数据API接口进行测试、集成、联调等需求,比如:(1)前端开发人员很快开发完成了UI界面,但后端开发人员的API接口还没有完成,不能进行前后端数据接口对接和联调,很容易影响开发进度。前端开发人员用的比较多的开源组件有mock.js,但该组件缺乏界面管理,因为这样做很容易造成代码耦合,甚至一不小心就会把Mock代码打包到生产环境。(2)在一些数据大屏可视化、报
- vue项目中使用mock.js模拟数据
时间__前端
创建1、在vue项目的根目录下创建mock文件。2、下载依赖npminstallmockjs--save//下载mock.jsnpminstalljson5--save//安装json5依赖使用1.在mock文件夹下创建index.js(入口文件)和json文件夹(用于存放模拟的数据)2.在index.js引入相应模块,做读取模拟数据返回给前端constfs=require('fs')//引入fs
- 2022-09-06 记一次前端下载文件乱码问题
昊桐_260c
问题由来:该死的mock.js由于在开发过程中引用了mock.js进行模拟接口mock在运行的过程中回来拦截请求,重写。将下载文件的接口返回来的重写成了字符串,所以导致乱码问题!!!
- 【Mock.js】详解
早睡第一人
javascript
在前后端同时开发的时候,后端接口数据没有出来时,前端可以使用mock假数据模拟开发。一、基础语法1、数据模板定义属性值方法String1、'name|min-max':string2、'name|count':string1、通过重复string生成一个字符串,重复次数大于等于min,小于等于max。2、通过重复string生成一个字符串,重复次数等于count。Number1、'name|+1'
- mock.js数据占位符(二)
GaoEnron
数据占位符定义规范DPDMock.Random是一个工具类,用于生成各种随机数据。Mock.Random的方法在数据模板中称为『占位符』,书写格式为@占位符(参数[,参数])。一、内置方法列表TypeMethordBasicboolean,natural,integer,float,character,string,range,date,time,datetime,nowImageimage,da
- mockjs学习
汶沐
Mock.js语法规范包括两部分:数据模板定义规范和数据占位符定义规范。1.数据模板定义规范:数据模板中的每个属性由3部分构成:属性名、生成规则、属性值:注意事项:●属性名和生成规则间要用|隔开●生成规则不是固定的,是可选的●生成规则的格式有:1:'name|min-max':value2:'name|count':value3:'name|min-max.dmin-dmax':value4:'n
- 2024 年最佳 Mock 工具 Top 5
LiamHong_
前端前端框架学习方法javascriptjson
在持续发展的前端开发领域,一套高效的自动化工具是关键。这篇文章将带你了解五个出色的模拟工具,它们能极大提升你的生产力、简化数据仿真,并提升接口测试效率。对于寻求提高工作流的前端开发者来说,它们是必不可少的。让我们开始探索这些工具,它们承诺将灵活性和智能带入你的开发过程!ApifoxApifox以其强大的模拟功能而著称,兼容Mock.js语法,并支持Nunjucks和自定义脚本,以适应各种场景。它的
- mock.js使用
有一个程序媛
1.引入mock.js依赖package.jsdependencies依赖注入mockjs("mockjs":"^1.0.1-beta3"),并标明版本,npminstall安装远程依赖2.项目中引入mockjsmain.js主js里面引入mockimport'./mock'mock文件夹下的index.jsimportMockfrom'mockjs'exportgetPeopleData(){c
- 使用vue-admin-template时,需要注意的问题,包括一定要去除mock.js注释
WEB前端圈
前端框架Vuejsjavascriptvue.js前端
在使用vue-admin-template等前端框架时,如果你没有打算用他们的mock数据,在生产环境下一定要注释mock引用的代码,虽然它没有被调用,但是如果你不注释,就会被打包进去。找到main.js,看如下代码:/***Ifyoudon'twanttousemock-server*youwanttouseMockJsformockapi*youcanexecute:mockXHR()**Cu
- react 使用mock.js模拟后台数据
神奇大叔
Reactreact
1、cnpminstallmockjs-S2、在index.js引入mock.js文件判断是否是生产环境if(process.env.NODE_ENV=='development'){require("mock.js文件所在路径");}3、创建js文件(1)引入varMock=require('mockjs')(2)设置数据返回时间Mock.setup({timeout:毫秒,})(3)设置返回数
- Java 结合 Mock.js 模拟数据
道三两句晚安~~
Java前端javascript前端htmljava
在程序开发初期,或者说有时候需要模拟假数据的情况下,我们可以采用mock方式生成数据,本次实验采用Mock.js模拟数据。mock.js下载地址,打开直接复制保存即可https://cdn.bootcdn.net/ajax/libs/Mock.js/1.0.1-beta3/mock-min.jsMock.js文档:Mock.js下载之后将mock.js文件放在resources目录下即可,如图程序
- vue项目中使用mock.js模拟数据
流偌花火
vue项目中使用mock.jsvue.js前端
vue项目中使用mockjs模拟数据创建1、在vue项目的根目录下创建mock文件夹。2、下载依赖npmiaxios--save//安装axiosnpmimockjs--save//安装mock.jsnpmijson5--save//安装json5依赖使用1.在mock文件夹下创建index.js(入口文件)和userinfo.json5文件(用于存放模拟的数据)2.在index.js引入相应模块
- 使用mock.js模拟数据
永久旅途
AJAX前端ajaxjavascript开发语言
一、安装mock.jsnpmimockjs二、配置JSON文件我们创建一个mock文件夹,用于存放mock相关的模拟数据和代码实现。我们将数据全部放在xxx.json文件夹下,里面配置我们需要的JSON格式的数据。注意:json文件中不要留有空格,否则会获取数据失败!如果json数据中有用到图片,记得配置图片的路径。三、模拟mock接口我们在mock文件夹下创建一个mockServe.js文件,用
- ASM系列四 利用Method 组件动态注入方法逻辑
lijingyao8206
字节码技术jvmAOP动态代理ASM
这篇继续结合例子来深入了解下Method组件动态变更方法字节码的实现。通过前面一篇,知道ClassVisitor 的visitMethod()方法可以返回一个MethodVisitor的实例。那么我们也基本可以知道,同ClassVisitor改变类成员一样,MethodVIsistor如果需要改变方法成员,注入逻辑,也可以
- java编程思想 --内部类
百合不是茶
java内部类匿名内部类
内部类;了解外部类 并能与之通信 内部类写出来的代码更加整洁与优雅
1,内部类的创建 内部类是创建在类中的
package com.wj.InsideClass;
/*
* 内部类的创建
*/
public class CreateInsideClass {
public CreateInsideClass(
- web.xml报错
crabdave
web.xml
web.xml报错
The content of element type "web-app" must match "(icon?,display-
name?,description?,distributable?,context-param*,filter*,filter-mapping*,listener*,servlet*,s
- 泛型类的自定义
麦田的设计者
javaandroid泛型
为什么要定义泛型类,当类中要操作的引用数据类型不确定的时候。
采用泛型类,完成扩展。
例如有一个学生类
Student{
Student(){
System.out.println("I'm a student.....");
}
}
有一个老师类
- CSS清除浮动的4中方法
IT独行者
JavaScriptUIcss
清除浮动这个问题,做前端的应该再熟悉不过了,咱是个新人,所以还是记个笔记,做个积累,努力学习向大神靠近。CSS清除浮动的方法网上一搜,大概有N多种,用过几种,说下个人感受。
1、结尾处加空div标签 clear:both 1 2 3 4
.div
1
{
background
:
#000080
;
border
:
1px
s
- Cygwin使用windows的jdk 配置方法
_wy_
jdkwindowscygwin
1.[vim /etc/profile]
JAVA_HOME="/cgydrive/d/Java/jdk1.6.0_43" (windows下jdk路径为D:\Java\jdk1.6.0_43)
PATH="$JAVA_HOME/bin:${PATH}"
CLAS
- linux下安装maven
无量
mavenlinux安装
Linux下安装maven(转) 1.首先到Maven官网
下载安装文件,目前最新版本为3.0.3,下载文件为
apache-maven-3.0.3-bin.tar.gz,下载可以使用wget命令;
2.进入下载文件夹,找到下载的文件,运行如下命令解压
tar -xvf apache-maven-2.2.1-bin.tar.gz
解压后的文件夹
- tomcat的https 配置,syslog-ng配置
aichenglong
tomcathttp跳转到httpssyslong-ng配置syslog配置
1) tomcat配置https,以及http自动跳转到https的配置
1)TOMCAT_HOME目录下生成密钥(keytool是jdk中的命令)
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit
- 关于领号活动总结
alafqq
活动
关于某彩票活动的总结
具体需求,每个用户进活动页面,领取一个号码,1000中的一个;
活动要求
1,随机性,一定要有随机性;
2,最少中奖概率,如果注数为3200注,则最多中4注
3,效率问题,(不能每个人来都产生一个随机数,这样效率不高);
4,支持断电(仍然从下一个开始),重启服务;(存数据库有点大材小用,因此不能存放在数据库)
解决方案
1,事先产生随机数1000个,并打
- java数据结构 冒泡排序的遍历与排序
百合不是茶
java
java的冒泡排序是一种简单的排序规则
冒泡排序的原理:
比较两个相邻的数,首先将最大的排在第一个,第二次比较第二个 ,此后一样;
针对所有的元素重复以上的步骤,除了最后一个
例题;将int array[]
- JS检查输入框输入的是否是数字的一种校验方法
bijian1013
js
如下是JS检查输入框输入的是否是数字的一种校验方法:
<form method=post target="_blank">
数字:<input type="text" name=num onkeypress="checkNum(this.form)"><br>
</form>
- Test注解的两个属性:expected和timeout
bijian1013
javaJUnitexpectedtimeout
JUnit4:Test文档中的解释:
The Test annotation supports two optional parameters.
The first, expected, declares that a test method should throw an exception.
If it doesn't throw an exception or if it
- [Gson二]继承关系的POJO的反序列化
bit1129
POJO
父类
package inheritance.test2;
import java.util.Map;
public class Model {
private String field1;
private String field2;
private Map<String, String> infoMap
- 【Spark八十四】Spark零碎知识点记录
bit1129
spark
1. ShuffleMapTask的shuffle数据在什么地方记录到MapOutputTracker中的
ShuffleMapTask的runTask方法负责写数据到shuffle map文件中。当任务执行完成成功,DAGScheduler会收到通知,在DAGScheduler的handleTaskCompletion方法中完成记录到MapOutputTracker中
- WAS各种脚本作用大全
ronin47
WAS 脚本
http://www.ibm.com/developerworks/cn/websphere/library/samples/SampleScripts.html
无意中,在WAS官网上发现的各种脚本作用,感觉很有作用,先与各位分享一下
获取下载
这些示例 jacl 和 Jython 脚本可用于在 WebSphere Application Server 的不同版本中自
- java-12.求 1+2+3+..n不能使用乘除法、 for 、 while 、 if 、 else 、 switch 、 case 等关键字以及条件判断语句
bylijinnan
switch
借鉴网上的思路,用java实现:
public class NoIfWhile {
/**
* @param args
*
* find x=1+2+3+....n
*/
public static void main(String[] args) {
int n=10;
int re=find(n);
System.o
- Netty源码学习-ObjectEncoder和ObjectDecoder
bylijinnan
javanetty
Netty中传递对象的思路很直观:
Netty中数据的传递是基于ChannelBuffer(也就是byte[]);
那把对象序列化为字节流,就可以在Netty中传递对象了
相应的从ChannelBuffer恢复对象,就是反序列化的过程
Netty已经封装好ObjectEncoder和ObjectDecoder
先看ObjectEncoder
ObjectEncoder是往外发送
- spring 定时任务中cronExpression表达式含义
chicony
cronExpression
一个cron表达式有6个必选的元素和一个可选的元素,各个元素之间是以空格分隔的,从左至右,这些元素的含义如下表所示:
代表含义 是否必须 允许的取值范围 &nb
- Nutz配置Jndi
ctrain
JNDI
1、使用JNDI获取指定资源:
var ioc = {
dao : {
type :"org.nutz.dao.impl.NutDao",
args : [ {jndi :"jdbc/dataSource"} ]
}
}
以上方法,仅需要在容器中配置好数据源,注入到NutDao即可.
- 解决 /bin/sh^M: bad interpreter: No such file or directory
daizj
shell
在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。
分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。
解决:
1)在windows下转换:
利用一些编辑器如UltraEdit或EditPlus等工具
- [转]for 循环为何可恨?
dcj3sjt126com
程序员读书
Java的闭包(Closure)特征最近成为了一个热门话题。 一些精英正在起草一份议案,要在Java将来的版本中加入闭包特征。 然而,提议中的闭包语法以及语言上的这种扩充受到了众多Java程序员的猛烈抨击。
不久前,出版过数十本编程书籍的大作家Elliotte Rusty Harold发表了对Java中闭包的价值的质疑。 尤其是他问道“for 循环为何可恨?”[http://ju
- Android实用小技巧
dcj3sjt126com
android
1、去掉所有Activity界面的标题栏
修改AndroidManifest.xml 在application 标签中添加android:theme="@android:style/Theme.NoTitleBar"
2、去掉所有Activity界面的TitleBar 和StatusBar
修改AndroidManifes
- Oracle 复习笔记之序列
eksliang
Oracle 序列sequenceOracle sequence
转载请出自出处:http://eksliang.iteye.com/blog/2098859
1.序列的作用
序列是用于生成唯一、连续序号的对象
一般用序列来充当数据库表的主键值
2.创建序列语法如下:
create sequence s_emp
start with 1 --开始值
increment by 1 --増长值
maxval
- 有“品”的程序员
gongmeitao
工作
完美程序员的10种品质
完美程序员的每种品质都有一个范围,这个范围取决于具体的问题和背景。没有能解决所有问题的
完美程序员(至少在我们这个星球上),并且对于特定问题,完美程序员应该具有以下品质:
1. 才智非凡- 能够理解问题、能够用清晰可读的代码翻译并表达想法、善于分析并且逻辑思维能力强
(范围:用简单方式解决复杂问题)
- 使用KeleyiSQLHelper类进行分页查询
hvt
sql.netC#asp.nethovertree
本文适用于sql server单主键表或者视图进行分页查询,支持多字段排序。KeleyiSQLHelper类的最新代码请到http://hovertree.codeplex.com/SourceControl/latest下载整个解决方案源代码查看。或者直接在线查看类的代码:http://hovertree.codeplex.com/SourceControl/latest#HoverTree.D
- SVG 教程 (三)圆形,椭圆,直线
天梯梦
svg
SVG <circle> SVG 圆形 - <circle>
<circle> 标签可用来创建一个圆:
下面是SVG代码:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<circle cx="100" c
- 链表栈
luyulong
java数据结构
public class Node {
private Object object;
private Node next;
public Node() {
this.next = null;
this.object = null;
}
public Object getObject() {
return object;
}
public
- 基础数据结构和算法十:2-3 search tree
sunwinner
Algorithm2-3 search tree
Binary search tree works well for a wide variety of applications, but they have poor worst-case performance. Now we introduce a type of binary search tree where costs are guaranteed to be loga
- spring配置定时任务
stunizhengjia
springtimer
最近因工作的需要,用到了spring的定时任务的功能,觉得spring还是很智能化的,只需要配置一下配置文件就可以了,在此记录一下,以便以后用到:
//------------------------定时任务调用的方法------------------------------
/**
* 存储过程定时器
*/
publi
- ITeye 8月技术图书有奖试读获奖名单公布
ITeye管理员
活动
ITeye携手博文视点举办的8月技术图书有奖试读活动已圆满结束,非常感谢广大用户对本次活动的关注与参与。
8月试读活动回顾:
http://webmaster.iteye.com/blog/2102830
本次技术图书试读活动的优秀奖获奖名单及相应作品如下(优秀文章有很多,但名额有限,没获奖并不代表不优秀):
《跨终端Web》
gleams:http