本文整理匯總了TypeScript中@tg-resources/is.isObject函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript isObject函數的具體用法?TypeScript isObject怎麽用?TypeScript isObject使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了isObject函數的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: if
Object.keys(routes).forEach((key) => {
if (routes[key] instanceof Router) {
routeMap[key] = routes[key];
} else if (isString(routes[key])) {
routeMap[key] = createResourceFactory(resourceKlass, (routes[key] as string), null);
} else if (isResourceTuple(routes[key])) {
const [apiEndpoint, resourceConfig] = routes[key] as ResourceTuple;
routeMap[key] = createResourceFactory(resourceKlass, apiEndpoint, resourceConfig);
} else if (isResourceConstructorObject(routes[key])) {
const { apiEndpoint, ...resourceConfig } = routes[key] as ResourceConstructorObject;
routeMap[key] = createResourceFactory(resourceKlass, apiEndpoint, resourceConfig);
} else if (isObject(routes[key])) {
routeMap[key] = createRouter(routes[key], null, resourceKlass, createResourceFactory);
} else {
const types = [
'string',
'[string, config]',
'{apiEndpoint: string, ..config}',
'{ ...any }',
];
throw new Error(`Unknown type used "${key}", one of [${types.join(',')}] is allowed`);
}
});
示例2: serializeCookies
export function serializeCookies(cookieVal: ObjectMap<string | null>) {
/* istanbul ignore else: safeguard */
if (isObject(cookieVal)) {
// istanbul ignore next: Tested in package that implement Resource
return Object.keys(cookieVal)
.filter((key: string) => hasValue(cookieVal[key]))
.map((key: string) => cookie.serialize(key, (cookieVal[key] as string)))
.join('; ');
}
/* istanbul ignore next: safeguard */
return null;
}
示例3: test
test('mutateResponse functionally works', async () => {
const res = new Resource('/hello', {
apiRoot: hostUrl,
mutateResponse(data: any, raw?: Response) {
return {
data,
poweredBy: isObject(raw) ? raw.headers['x-powered-by'] : null,
};
},
});
await expectResponse(res.fetch(), { data: { message: 'world' }, poweredBy: 'Express' });
});
示例4: if
Object.keys(data).forEach((fieldKey) => {
const value = data[fieldKey];
// Future: Make this logic configurable
if (hasValue(value)) {
if (isArray(value)) {
// Send arrays as multipart arrays
value.forEach((fValue) => {
form.append(`${fieldKey}[]`, fValue);
});
} else if (isObject(value)) {
// Posting objects as stringifyed field contents to keep things consistent
form.append(fieldKey, JSON.stringify(value));
} else {
// Convert values via their toString
form.append(fieldKey, `${value}`);
}
}
});
示例5: if
Object.keys(data).forEach((fieldKey) => {
const value = data[fieldKey];
// Future: Make this logic configurable
if (hasValue(value)) {
if (isArray(value)) {
// Send arrays as multipart arrays
value.forEach((fValue) => {
req = req.field(`${fieldKey}[]`, fValue);
});
} else if (isObject(value)) {
// Posting objects as field contents is not supported by superagent
// to work around this we just jsonify them
req = req.field(fieldKey, JSON.stringify(value));
} else {
// Convert values via their toString
req = req.field(fieldKey, `${value}`);
}
}
});
示例6: isArray
export const isResourceTuple = (value: any): value is ResourceTuple => (
isArray(value) && value.length === 2 && typeof value[0] === 'string' && isObject(value[1])
);
示例7: isObject
export const isResourceConstructorObject = (value: any): value is ResourceConstructorObject => (
isObject(value) && 'apiEndpoint' in value
);