# 路徑常量
[TOC=2,3]
系統提供了很多常量供項目里使用,利用這些常量可以方便的訪問對應的文件。
### think.ROOT_PATH
項目的根目錄。
### think.RESOURCE_PATH
靜態資源根目錄,路徑為?`think.ROOT_PATH`?+?`/www/`。
### think.APP_PATH
APP 代碼目錄,路徑為?`think.ROOT_PATH`?+?`/app/`。
### think.THINK_PATH
ThinkJS 框架的根目錄。
### think.THINK_LIB_PATH
ThinkJS 框架?`lib`?目錄。
### think.getPath(module, type)
對于 model,controller,view 等目錄,由于每個模塊下都有這些目錄,所以無法給出一個固定的路徑值。可以通過?`think.getPath`?來獲取模塊下的路徑。
~~~
let path1 = think.getPath("common", "model"); //獲取 common 下 model 的目錄
let path2 = think.getPath("home", "controller"); //獲取 home 模塊下 controller 的目錄
~~~
### 自定義路徑常量
除了通過系統給的屬性或者方法來獲取路徑,還可以在項目里定義額外的路徑常量。
##### 入口文件里定義
項目的入口文件為?`src/index.js`?或者?`src/production.js`?等,可以在這些入口文件里定義一些路徑常量。如:
~~~
var thinkjs = require("thinkjs");
var path = require("path");
var rootPath = path.dirname(__dirname);
var instance = new thinkjs({
APP_PATH: rootPath + "/app",
ROOT_PATH: rootPath,
RESOURCE_PATH: __dirname,
UPLOAD_PATH: __dirname + "/upload", // 定義文件上傳的目錄
env: "development"
});
instance.run();
~~~
##### 啟動文件里定義
定義在?`src/common/bootstrap`?里的文件在項目啟動時會自動加載,所以也可以在這些文件里定義路徑常量。如:
~~~
// src/common/bootstrap/common.js
think.UPLOAD_PATH = think.RESOURCE_PATH + "/upload"; //定義文件上傳的目錄
~~~
- 快速入門
- 介紹
- 創建項目
- 項目結構
- 代碼規范
- 升級指南
- 進階應用
- 模塊
- 控制器
- 視圖
- 配置
- 路由
- 模型
- 介紹
- 事務
- 關聯模型
- Mysql
- MongoDB
- SQLite
- Adapter
- 介紹
- Cache
- Session
- WebSocket
- Template
- 擴展功能
- thinkjs 命令
- 靜態資源訪問
- Middleware
- Service
- Cookie
- 錯誤處理
- 錯誤信息
- 數據校驗
- 國際化
- 路徑常量
- REST API
- 定時任務
- 線上部署
- 推薦模塊
- API
- think
- think.base
- think.http.base
- http
- controller
- rest controller
- model
- model.mongo
- middleware