codecamp

ThinkJS 模块

模块

ThinkJS 创建项目时支持多种项目模式,默认创建的项目是按模块来划分的,并且自动添加了 common 和 home2 个模块。每个模块有独立的配置、控制器、视图、模型等文件。

模块列表

进去 src/ 目录就可以看到模块列表:

drwxr-xr-x   5 welefen  staff  170 Aug 18 15:55 common/
drwxr-xr-x   6 welefen  staff  204 Sep  8 19:14 home/

common 模块

common 模块是个通用模块,该模块下存放一些通用的功能,如: 通用的配置,runtime 目录,启动文件,错误处理控制器等。

注: 该模块下的控制器不能响应用户的请求。

默认模块

默认模块为 home 模块。当解析用户的请求找不到模块时会自动对应到 home 下。

可以通过配置 default_module 来修改默认模块,修改配置文件 src/common/config/config.js

//将默认模块名改为 blog
export default {
    default_module: "blog"
}

添加模块

添加模块直接通过 thinkjs 命令即可完成。

在当前项目目录下,执行 thinkjs module xxx,即可创建名为 xxx 的模块。

如果模块名已经存在,则无法创建。

禁用模块

ThinkJS 默认会自动查找和识别项目下的模块,并认为所有的模块都是可用的。

如果想禁用部分模块,可以修改配置文件 src/common/config/config.js,添加下面的配置:

export default {
    deny_module_list: ["xxx"] //禁用 xxx 模块
}
ThinkJS 升级指南
ThinkJS 控制器
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }