PureJS (6.5):配置文件
配置文件的目的是把经常变化的部分提取出来,以便修改。相比 XML,直接用 js 进行配置会更为直截了当一些。
在现在的 PureJS 工程中有三类配置文件:
首先是 lib 和 server 的配置,在程序启动时生效,不支持热部署。
其次是特定应用的配置,修改后生效,支持热部署。
最后是用于测试的配置,与 lib 的配置相似,但设置的参数不同。
当然,现在 PureJS 的功能还比较基础,因此需要配置的地方还不多。
接下来,我们就逐一看看这些配置文件吧。
lib 和 server 的配置文件
lib 中需要配置的有 pure.db 使用的数据库名称 和 pure.render 使用的页面文件目录(路径前缀)。
server 需要配置端口、网站根目录、web 资源文件目录等。
以下是 lib 和 server 的配置文件:
scripts/config.js
config = {
// 指定数据库名称
db : { name : 'app' },
// 指定页面文件目录(路径前缀)
render : { prefix : 'webapp/' },
// server 的配置
server : {
// 使用的端口号
port : 8080,
// 网站根目录,即网站 URL 中接在域名之后的部分
contextPath: "/",
// web 资源文件目录,客户端可见的 html、css、js 等都放在这个目录下
resourceBase: "webapp",
// 上传文件的最大限制
maxUploadSize : 10 * 1024 * 1024,
// log4j 日志系统的配置文件的位置
logConfigPath: "log4j.properties",
// 服务器端执行的脚本的位置,这些脚本支持热部署
scriptsDirs : ["scripts/lib", "webapp/js/both", "scripts/app"],
// servlet 的位置 (apiServlet 和 pageServlet)
servletsDirs: ["scripts/servlets"],
// apiServlet 的访问路径映射
apiServletPath: "/api",
// pageServlet 的访问路径映射
pageServletPath: "/",
// defaultServlet(静态文件)的访问路径映射
defaultServletPath : "*.js,*.css,*.ico,*.txt,*.png,*.jpg,*.gif,*.htm,*.html,*.swf"
}
}
在 pure.db 的实现中,获取数据库实例时使用了 config.db.name:
scripts/lib/pure/db.js
function params() {
db = imp.Mongo().getDB(config.db.name);
// 其他代码,略。
}
function get(name) {
return proxy(db.getCollection(name));
}
在 pure.render 的实现中,获取文件名时使用了 pure.render.prefix:
scripts/lib/pure/render.js
function extend() {
// 其他代码,略。
var r = config.render;
pure.render.prefix = r && r.prefix || "";
}
function render(partial, file, func) {
// 其他代码,略。
file = pure.render.prefix + file + ".html";
// 其他代码,略。
}
特定应用的配置文件
应用本身也需要配置文件,并且这些文件通常放在 app 目录或其子目录下,以支持热部署。
这里以 admin 的用户名和密码为例:
scripts/app/config.js
app.config = {
admin : { name: "admin", password: "admin123" }
};
在 api.auth 的实现中就可以使用 app.config.admin 了:
scripts/app/api/auth.js
api.auth = {
login : function(params, req) {
var admin = app.config.admin;
if (params.name !== admin.name
|| params.password !== admin.password) {
return false;
}
req.session.setAttribute("user.role", "admin");
return true;
}
}
用于测试的配置文件
测试时使用的数据库和页面文件的位置可能与生产不同,因此需要另外的配置文件,以下是两个例子:
scripts/test/app/config.js
config = {
db: { name: 'test' },
render: { prefix: 'webapp/' }
};
scripts/test/lib/config.js
config = {
db: { name: 'test' },
render: { prefix: 'scripts/test/lib/render/' }
};
分享到:
相关推荐
从提供的文件信息来看,文件标题为《VDA-6.5产品审核(最新版)》,这提示我们接下来的内容将涉及VDA-6.5标准的最新修订版本,即德国汽车工业联合会(Verband der Automobilindustrie,简称VDA)发布的第六部分第五版...
Myeclipse6.5 svn配置,免费资源,仅供参考!
### Centos6.5镜像文件下载与安装详解 #### 一、CentOS 6.5简介 CentOS是Community ENTerprise Operating System的缩写,是一个基于Linux内核的操作系统,它主要提供了企业级的计算环境。CentOS 6.5作为CentOS 6...
centos 6.5下的文件上传下载服务安装和配置 centos 6.5下的文件上传下载服务是指在centos 6.5操作系统中安装和配置文件上传下载服务,以解决上传和下载文件的问题。这个服务可以让用户轻松地上传和下载文件,而不...
**学习和使用PB6.5:** 对于初学者,可以从基础的窗口设计、数据窗口创建、脚本编写等方面入手,逐步掌握PB6.5的基本功能。同时,参考官方文档、在线教程和社区论坛,可以帮助解决遇到的问题。随着经验的积累,可以...
该指南提供了不同客户规模下的硬件配置建议,涵盖数据库服务器、应用服务器、文件服务器、测试/接口服务器/备份服务器、中间件软件、存储设备和备份软件等多个方面。 以下是从该指南中总结出的关键知识点: 1. ...
文件服务器配置是NC6.5文件服务器的文件管理配置。该配置包括文件服务器的网络设置、存储设置、文件管理设置等。正确地配置文件服务器对于文件管理非常重要。 管理控制台 管理控制台是NC6.5文件服务器的管理工具。...
【vCenter 6.5 HA配置教程】 vCenter 6.5 High Availability (HA) 是一项关键特性,它确保了vCenter服务器的高可用性,即使在单个宿主机或虚拟机故障的情况下也能保持服务的连续性。在早期版本中,配置vCenter HA...
"MyEclipse_6.5下配置SVN"这个主题聚焦于如何在集成开发环境(IDE)MyEclipse 6.5中设置Subversion(SVN)支持,以便开发者可以利用SVN的强大功能进行版本控制。 Subversion是一种广泛使用的开源版本控制系统,用于...
Araxis Merge v6.5:免安装版本,解压直接运行merge.exe即可正常使用(目前好像不支持Win10系统了,但是我同事的win10可以用,看需要使用)。 Araxis Merge 2017:解压后,看安装说明,比较简单,纯净2017,推荐...
### Redhat 6.5 配置 Yum 本地源详解 #### 一、引言 在企业级环境中,为了确保软件包的安全性和稳定性,通常会采用私有仓库来管理系统的更新与安装。对于 Redhat 6.5 来说,配置一个 Yum 本地源是非常实用且必要的...
更新:2015 年 2 月 13 日,R. Hoetzlein (c) 2012-2013 的 Port of Fluids v.3.1, //fluids3.com 到 Muhammad Mobeen Movania 的...配置文件时间。 现在包括使用 NVIDIA 的免费 NSight 工具在 GPU 上进行分析的 GP
兼容6.5.X; 一般注意事项,见http://down.51cto.com/data/275922 建议中文的sugar系统修改config.php配置文件,以获得更好使用(先备份好原文件)。 config.php为sugar配置文件,建议更改部分。 第1处: 'default...
在进行Linux CentOS6.5下的PHP环境配置之前,我们需要了解相关的基础知识点以及操作步骤,以下是关于Linux CentOS6.5、PHP、Nginx以及如何配置他们的一些详细知识点。 首先,我们来谈谈CentOS。CentOS(Community ...
根据给定的文件信息,我们可以总结出关于BO6.5安装配置的重要知识点,涉及系统要求、软件安装步骤、产品模块选择等关键环节。 ### 1. 对服务器的要求 #### 操作系统 BO6.5支持多种操作系统,包括Windows 2000 ...
Ext JS 6.5.3.57 - JavaScript Library Copyright (c) 2006-2018, Sencha Inc. All rights reserved. licensing@sencha.com
(默认配置的是 php 文件夹,如果要换其他文件夹,请自行修改 nginx 的 dev.conf 文件的配置) 示例: 根目录 |--php |--cai |--zheng |--hai |--getyii |--frontend |--web 默认我使用的是 *....
本篇文章将详细讲解如何在CentOS 6.5上配置LAMP环境,并介绍所需的安装文件。 首先,让我们从Linux开始。CentOS 6.5是一个基于Red Hat Enterprise Linux的稳定版本,提供了强大的服务器基础。为了开始LAMP安装,你...