當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript graphql-relay.fromGlobalId函數代碼示例

本文整理匯總了TypeScript中graphql-relay.fromGlobalId函數的典型用法代碼示例。如果您正苦於以下問題:TypeScript fromGlobalId函數的具體用法?TypeScript fromGlobalId怎麽用?TypeScript fromGlobalId使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了fromGlobalId函數的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1:

const nodeDefinitions = R.nodeDefinitions(globalId => {
    const modelTypes = ['User', 'Message']
    const idInfo = R.fromGlobalId(globalId)
    const typeIndex = modelTypes.indexOf(idInfo.type)
    if (typeIndex !== -1) { return db[modelTypes[typeIndex]].get(idInfo.id).run() }
    return null
})
開發者ID:duataud,項目名稱:PlayApp,代碼行數:7,代碼來源:mainSchema.ts

示例2: return

    return (async () => {
      seed.createdAt = Date.now();
      seed.userId = fromGlobalId(seed.userId).id;
      let counter: ISequenceValue = await getSeedNextSequence('seedCounter', context.db);
      seed.index = counter.value.seq;
      if (seed.cross.first !== undefined) {
        let firstSeed: ISeed = await context.db.collection('seeds').find({ index: seed.cross.first }).limit(1).next();

        seed.cross.secondIndex = firstSeed.cross.secondIndex;

        if (seed.cross.type === 'G') {
          seed.cross.name = firstSeed.cross.name;
          seed.cross.index = firstSeed.cross.index + 1;

        } else {
          seed.cross.name = seed.cross.type;
          seed.cross.index = 1;

          if (seed.cross.type === 'BC' || seed.cross.type === 'OC') {
            seed.cross.secondIndex = (firstSeed.cross.secondIndex || 0) + 1;
          }
        }
      } else {
        seed.cross.index = 0;
        seed.cross.name = seed.cross.type;
      }

      return context.db.collection('seeds').insertOne(seed);
    })();
開發者ID:pjayala,項目名稱:labseed,代碼行數:29,代碼來源:seed.mutation.ts

示例3: idFetcher

async function idFetcher(globalId: any, context: IContext) {
  let global: ResolvedGlobalId = fromGlobalId(globalId);
  if (global.type === 'Store') {
    return store;

  } else if (global.type === 'Seed') {
    return await context.db.collection('seeds').find({ _id: new ObjectID(global.id) }).limit(1).next();

  } else if (global.type === 'User') {
    return await context.db.collection('users').find({ _id: new ObjectID(global.id) }).limit(1).next();

  }
  return null;

}
開發者ID:pjayala,項目名稱:labseed,代碼行數:15,代碼來源:type.ts

示例4: ObjectID

 mutateAndGetPayload: (user: IUser, context: IContext) => {
   user.updatedAt = Date.now();
   let id: ObjectID = new ObjectID(fromGlobalId(user.id).id);
   console.log(user);
   return context.db.collection('users').updateOne(
     { _id: id },
     {
       $set: {
         login: user.login,
         email: user.email,
         name: user.name,
         surname: user.surname,
         updatedAt: user.updatedAt
       }
     }
   );
 }
開發者ID:pjayala,項目名稱:labseed,代碼行數:17,代碼來源:user.mutation.ts

示例5: fromGlobalId

 (globalId) => {
     var {type, id} = fromGlobalId(globalId);
     return "data[type][id]";
 },
開發者ID:EmmaRamirez,項目名稱:DefinitelyTyped,代碼行數:4,代碼來源:graphql-relay-tests.ts

示例6: GraphQLObjectType

const resolver: GraphQLTypeResolver<any, any> = () => {
    return new GraphQLObjectType({
        name: "T",
        fields: {},
    });
};
const idFetcher = (id: string, context: number, info: GraphQLResolveInfo) => {
    info.fieldName = "f";
};
const nodeDef = nodeDefinitions<number>(idFetcher, resolver);
const fieldConfig: GraphQLFieldConfig<any, any> = nodeDef.nodeField;
const interfaceType: GraphQLInterfaceType = nodeDef.nodeInterface;
// toGlobalId takes a type name and an ID specific to that type name, and returns a "global ID" that is unique among all types.
toGlobalId("t", "i").toLowerCase();
// fromGlobalId takes the "global ID" created by toGlobalID, and returns the type name and ID used to create it.
const fgi = fromGlobalId("gid");
fgi.id.toLowerCase();
fgi.type.toUpperCase();
// globalIdField creates the configuration for an id field on a node.
const idFetcher2 = (object: any, context: any, info: GraphQLResolveInfo) => {
    return "";
};
const gif: GraphQLFieldConfig<any, any> = globalIdField("t", idFetcher2);
// pluralIdentifyingRootField creates a field that accepts a list of non-ID identifiers (like a username) and maps them to their corresponding objects.
const input: GraphQLInputType = GraphQLString;
const prf: GraphQLFieldConfig<any, any> = pluralIdentifyingRootField({
    argName: "a",
    inputType: input,
    outputType: input,
    resolveSingleInput: (input: any, context: any, info: GraphQLResolveInfo) => {
        return "";
開發者ID:EmmaRamirez,項目名稱:DefinitelyTyped,代碼行數:31,代碼來源:graphql-relay-tests.ts


注:本文中的graphql-relay.fromGlobalId函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。