本文整理汇总了TypeScript中@tsed/core.Store.fromMethod方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Store.fromMethod方法的具体用法?TypeScript Store.fromMethod怎么用?TypeScript Store.fromMethod使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@tsed/core.Store
的用法示例。
在下文中一共展示了Store.fromMethod方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: before
before(() => {
ReturnsArray({
description: "Success",
type: Test
})(Test, "test4", descriptorOf(Test, "test4"));
this.store = Store.fromMethod(Test, "test4");
});
示例2: return
return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {
const type = getDecoratorType([target, propertyKey, descriptor], true);
switch (type) {
default:
throw new Error("MulterOptions is only supported on method");
case "method":
Store.fromMethod(target, propertyKey).merge(MultipartFileMiddleware, {
options
});
return descriptor;
}
};
示例3: it
it("should set the responses", () => {
// WHEN
Responses(400, {
description: "Bad Request"
})(Test);
// THEN
const store = Store.fromMethod(Test, "test");
store.get("responses").should.deep.eq({
"400": {
description: "Bad Request"
}
});
});
示例4: it
it("should set the operation", () => {
// WHEN
Operation({
security: [
{"auth": ["scope"]}
]
})(Test);
// THEN
const store = Store.fromMethod(Test, "test");
store.get("operation").should.deep.eq({
security: [
{"auth": ["scope"]}
]
});
});
示例5: before
before(() => {
MulterOptions({dest: "/"})(Test.prototype, "test", descriptorOf(Test.prototype, "test"));
this.store = Store.fromMethod(Test.prototype, "test");
});
示例6: return
return (target: any, propertyKey: string, parameterIndex: number): void => {
const type = getDecoratorType([target, propertyKey, parameterIndex], true);
switch (type) {
default:
throw new Error("MultipartFile is only supported on parameters");
case "parameter":
const store = Store.fromMethod(target, propertyKey);
const multiple = Metadata.getParamTypes(target, propertyKey)[parameterIndex] === Array;
const options = typeof name === "object" ? name : undefined;
const added = store.has("multipartAdded");
name = (typeof name === "object" ? undefined : name)!;
// create endpoint metadata
store.merge("consumes", ["multipart/form-data"]).set("multipartAdded", true);
store
.merge("responses", {
"400": {
description: `<File too long | Too many parts | Too many files | Field name too long | Field value too long | Too many fields | Unexpected field> [fieldName]
Example: File too long file1`
}
})
.set("multipartAdded", true);
if (!added) {
// middleware is added
UseBefore(MultipartFileMiddleware)(target, propertyKey, descriptorOf(target, propertyKey));
}
if (name === undefined) {
store.merge(MultipartFileMiddleware, {
options,
any: true
});
ParamRegistry.useFilter(multiple ? MultipartFilesFilter : MultipartFileFilter, {
propertyKey,
parameterIndex,
target,
useConverter: false,
paramType: ParamTypes.FORM_DATA
});
} else {
const expression = multiple ? (name as string) : name + ".0";
store.merge(MultipartFileMiddleware, {
fields: [
{
name,
maxCount
}
],
options
});
ParamRegistry.useFilter(MultipartFilesFilter, {
expression,
propertyKey,
parameterIndex,
target,
useConverter: false,
paramType: ParamTypes.FORM_DATA
});
}
break;
}
};