camelcase: 分小驼峰(首字母小写)和大驼峰(首字母大写)
Midway 使用的驼峰库为 camelcase
(首字母小写,但又有点不一样),在一些情况下,可能和你预想的不同。比如,在碰到两个大写的时候,后一个字母会变成小写。
如果不确定,你可以在项目下的命令行中临时测试。
➜ midway_v2_demo git:(master) ✗ node > require('camelCase')('UserMQController') 'userMqController' > require('camelCase')('UMQController') 'umqController'
注入参数
@Provide
和 @Inject
装饰器是有参数的,并且他们是成对出现。
这个参数叫做 依赖注入标识符,为了方便理解,我们这里先用 key 代替。
默认情况下:
- 1、
@Provide
取 类名的驼峰字符串 作为 key - 2、
@Inject
根据 规则 获取 key
规则如下:
- 1、如果装饰器包含参数,则以 参数字符串 作为 key
- 2、如果没有参数,标注的 TS 类型为 Class,则将类
@Provide
的 key 作为 key
- 3、如果没有参数,标注的 TS 类型为非 Class,则将 属性名 作为 key