en Kooboo Logo 说明文档

Module

 

提供了开发Module需要的额外方法
 
 
基本信息
 
取得当前Module的URL以及配置信息
 
k.module.baseUrl;
k.module.config; 
 
File
 
操作当前Module的本地文件, 可操作的类型如下:
 
k.module.localFile.api;
k.module.localFile.css; 
k.module.localFile.file;
k.module.localFile.img; 
k.module.localFile.js; 
k.module.localFile.view; 
 
读取的示例如下:
 
k.module.localFile.css.writeText("abc.css", "div{color:red;}")
 
var result = k.module.localFile.css.readText("abc.css");  
k.response.write(result); 
 
IndexedDb
 
操作当前Module下的IndexedDb实例, 与数据库章节里介绍的IndexedDb的操作方法是一样的, 唯一的差别是目前Module这边没有提供数据库管理界面。
 
插入与读取的示例方法如下:
 
var obj = {
    FirstName: "my first Name",
    LastName: "my last name"
}

k.module.localIndexedDb.newtable.add(obj); 
 
var list = k.module.localIndexedDb.newtable.all(); 
k.response.json(list); 
 
Sqlite
 
Module提供一个本地的Sqlite数据库,使用方法与站点下的Sqlite数据库是一样的
 
var obj = {
    FirstName: "my first Name",
    LastName: "my last name"
}

k.module.localSqlite.newtable.add(obj); 
 
var list = k.module.localSqlite.newtable.all(); 
k.response.json(list); 
 
定时任务
 
 
比如如果需要在Module中实现定时任务,示例如下:
 
k.task.minute(2).run(
    function () {
        var unPubLish = k.module.localDatabase.schedule.all();
        if (unPubLish) {
            unPubLish.forEach(
                function (o) {
                    if (o.date && o.date < Date.now) {
                        var content = k.content.blog.get(o.id);
                        if (content) {
                            content.Online = true;
                            k.content.blog.update(content);
                            k.module.localDatabase.schedule.delete(o.id)
                        }
                    }
                }
            );
        }

    }
);