【发布时间】:2016-06-03 05:42:25
【问题描述】:
我正在尝试构建我的第一个简单的基于 ORM 的 Node JS 应用程序。
我像这样创建了Database 模块
import * as Knex from 'knex';
import * as Bookshelf from 'bookshelf';
module Database {
class Config {
private static _knex: Knex = Knex({
client: 'mysql',
connection: {
host: '127.0.0.1',
user: 'root',
password: '',
database: 'test',
charset: 'utf8'
}
});
static _bookshelf: Bookshelf = Bookshelf(Config._knex);
}
export function bookshelf() {
Config._bookshelf.plugin('registry');
Config._bookshelf.plugin(['virtuals']);
return Config._bookshelf;
}
}
我正在尝试在 DAO 类之一中使用它
/// <reference path="../models/usermodel.ts" />
/// <reference path="../network/database.ts" />
module DAO {
export class UserDAO {
create(user: Model.User): Model.User { //Model.User is imported nicely
var test = Database.bookshelf(); //what's wrong with this
return null;
}
}
}
最终出现此错误dao/userdao.ts(18,24): error TS2304: Cannot find name 'Database'.
这是我第一次学习Typescript and Modules,如果我做错了什么,请告诉我。
更新:
只要我添加import statements in database.ts,它就不起作用/找不到名称。使用import * as something from some我做错了什么
【问题讨论】:
标签: javascript node.js module typescript