利用SPM工具运行自己创建的小组件(使用common-model向后台接口请求数据)
步骤如下:
1、安装依赖:spm install -e
2、编译:spm build
(编译好的东西会放在trunk-dist里面)
3、发布:spm app -d
(会出来一个export端口,一般是:4745)
4、在浏览器中输入:http://localhost:4745/examples/index.html 即可运行
如果出错了,出bug了,修改完,重新操作2、3、4、三个步骤。
for example:
1、组件架构如下:

2、代码:package.jon 配置信息(一些依赖):
"dependencies": {
"jquery": "<=1.9",
"backbone": "~1",
"moment": "~2",
"observer": "~0",
"water-model": "~1",
"lodash": "~3",
"data-list-panel": "~0",
"water-setting-panel": "~0",
"base-conditions-filter": "~1",
"moment": "~2",
"jquery-magic-tabs": "~0",
"common-model": "~0",
"nunjucks-slim": "~1",
"jquery-jmp3Player":"~0",
"jquery-cookie":"~1",
"excel-export":"~0",
"store":"~1",
"grid-table-package":"~0",
"layer":"~2"
},

3、src - sxlcom.js:
//require('../css/sxlcom-theme-base.css');
var $ = require('jquery');
var backbone=require('backbone');
var _ = require('lodash');
var CommonModel = require('common-model')
module.exports = backbone.View.extend({
initialize:function(options){
this.options=options || {};
this._initOptions();
},
_initOptions:function(){
//common-model实例化
//这是interface_common_model.json里面的接口。
var commonModel= new CommonModel('basic.data');
//发起请求
commonModel.fetch({
waterDetails:{
params:{
key: 'select_rain_nodata_list_hn'
}
}
},function(data){
console.log(data);
})
// 日期格式:
// [YYYY-MM-DDTHH:mm:ss,YYYY-MM-DDTHH:mm:ss]
// ['2016-12-01T08:00:00,2016-12-01T22:00:00']
},
//var commonModel = new CommonModel('map.layers');
// commonModel.fetch({
// mapLayers: {
// params: {
// id: area_code,
// type: 'area'
// }
// }
// }, function(data) {
// if (!_.isEmpty(data[0].data)) {
// that.options.tileMap.setPolyByData(data[0].data[0].data, that._polyConfig || {});
// }
// });
render:function(){
},
dispose:function(){
}
});

4、example - index.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script id="seajsnode" src="../sea-modules/sea.js"></script>
<script src="../sea-modules/seajs-helper.js"></script> <!-- TODO: 其他HTML标记 --> <script>
seajs.use(['../dist/sxlcom-debug'],function(sxlcom){
//TODO 示例代码
new sxlcom();
});
</script>
</body>
</html>

请求结果:
控制台上打印出一系列 接口的数据。
利用SPM工具运行自己创建的小组件(使用common-model向后台接口请求数据)的更多相关文章
- 小程序session_key失效解决方案、后台解密个人数据信息
目录 一.登录会话密钥 session_key 有效性 二.解决登录session_key 的问题 案例:解决session_key 过期问题,发送个人信息后台解密 后端解密信息,存入数据库 mysq ...
- 利用Git工具将本地创建的项目上传到Github上
前言 作为一个对前沿技术很看好的小青年,怎么能不会用Github呢?一年前我创建了Github,也知道git,但是尝试过用,但是就没弄明白,很多粉丝都问我Github的账号,想关注一波,无奈里面啥都没 ...
- 如何利用报表工具FineReport实现报表列的动态展示
相信动态列的实现困扰了很多人,大数据量,多字段的加载将会非常耗时,数据又做不到真正的动态灵活.现有的方式都是通过变向的隐藏等方式来实现. 那该如何解决呢?这里分享帆软报表设计器FineReport的实 ...
- Android Widget小组件开发(一)——Android实现时钟Widget组件的步骤开发,这些知识也是必不可少的!
Android Widget小组件开发(一)--Android实现时钟Widget组件的步骤开发,这些知识也是必不可少的! PS:学习自某网站(不打广告) 这个小组件相信大家都很熟悉吧,以前的墨迹天气 ...
- js 创建书签小工具之理论
我们一直在寻找增加浏览体验的方法,有的方法众所周知,有的则鲜为人知.我原本认为书签小工具属于后者,非常令人讨厌的东西.令我非常懊恼的是我发现在这个问题上我完全是错误的.它并不是令人厌烦的,而是以用户为 ...
- 【翻译】利用Qt设计师窗体在运行时创建用户界面(Creating a user interface from a Qt Designer form at run-time)
利用Qt设计师窗体在运行时创建用户界面 我们利用Calculator窗体例子中创建的窗体(Form)来展示当一个应用(application)已经生成后,是可以在其运行时产生与例子中相同的用户界面. ...
- 利用spm提供的MoAEpilot听觉数据学习预处理以及单被试glm分析与统计推断
1.数据介绍 下载:http://www.fil.ion.ucl.ac.uk/spm/data/auditory/ SUBJECT:1 VOLUME: 64*64*64 TR:7s total acq ...
- MYSQL启用日志,查看日志,利用mysqlbinlog工具恢复MySQL数据库【转载】
转自 MYSQL启用日志,查看日志,利用mysqlbinlog工具恢复MySQL数据库 - _安静 - 博客园http://www.cnblogs.com/xionghui/archive/2012/ ...
- 利用代码生成工具Database2Sharp设计数据编辑界面
在Winform程序开发中,界面部分的开发工作量一般是比较大的,特别是表的字段数据比较多的情况下,数据编辑界面所需要的繁琐设计和后台逻辑处理工作量更是直线上升,而且稍不注意,可能很多处理有重复或者错误 ...
随机推荐
- 移动混合开发之android文件管理demo
框架采用cordova,android编译环境为android studio.系统为mac,cordova 环境搭建参考网址:http://cordova.apache.org/docs/en/5.0 ...
- mvc 导入,导出excel
最近主要做导入excel 在网上查询了代码 public FileResult DownLoadExcelJiZuChaXunGenRenXiaoFeiJiLu() { DataTable dt = ...
- C语言程序设计第7堂作业
一.本次课主要内容: 本次以计算圆柱体体积为例,通过定义体积计算功能的函数和主函数调用的例子,引出函数定义的一般形式:函数首部加函数体,且在函数结尾处通过return 语句返回结果.本节要重 ...
- C语言程序设计第七次作业
一.学习内容 本次课学习了函数的基本知识,需要大家对如下知识点进行总结: 1. 函数定义的基本格式,函数定义和函数原型(声明)的区别何在? 2. 函数的调用方式有哪几种 ...
- 如果需要将UIView的4个角全部都为圆角,做法相当简单,只需设置其Layer的cornerRadius属性即可
如果需要将UIView的4个角全部都为圆角,做法相当简单,只需设置其Layer的cornerRadius属性即可(项目需要使用QuartzCore框架).而若要指定某几个角(小于4)为圆角而别的不变时 ...
- MyEclipse中直接打开class文件的方法
安装步骤: 1>下载jad.exe(这是一个class文件的反编译工具,但是是命令行运行编译,使用起来不是很方便:), 将其拷贝到%JAVA_HOME%/bin目录下(其他目录也可). 2> ...
- 深入理解JavaScript系列:各种上下文中的this
开头闲扯几句.上篇写对象原型的文章获得了1K多的阅读和几条评论,心里还是蛮欣喜的.那种写出来然后有人跟你讨论的感觉很不错. 公告里已经有写,自己开这个博客以及为什么要写文章的原因就是为了能把自己所思所 ...
- IOS atomic与nonatomic,assign,copy与retain的定义和区别
IOS atomic与nonatomic,assign,copy与retain的定义和区别 atomic和nonatomic用来决定编译器生成的getter和setter是否为原子操作. ...
- QTP对象识别tips
1.已添加的对象无法再次识别成功,编辑对象存储库中测试对象详细信息.子对象无法识别成功时,先检查父对象是否可成功识别. 2.使用.NET Windows Forms 侦测器检测后再使用object s ...
- linux动态时钟探索
在早期的linux内核版本的时间概念都是由周期时钟提供的.虽然比较有效,但是,对于关注能耗电量的系统上,就不能满足长时间休眠的需求,因为周期系统要求必须在一定的频率下,周期性的处于活动状态.因此,li ...