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


TypeScript types.memberExpression函數代碼示例

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


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

示例1: createVariableCallAST

export function createVariableCallAST(
  name: string,
  method: string,
  args: (Expression | SpreadElement)[],
) {
  return callExpression(
    memberExpression(createVariableAST(name), identifier(method)),
    args,
  );
}
開發者ID:Heigvd,項目名稱:Wegas,代碼行數:10,代碼來源:variableAST.ts

示例2: createGlobalCallAST

export function createGlobalCallAST(
  method: string,
  args: (Expression | SpreadElement)[],
) {
  const m = method.split('.').map(i => identifier(i));
  let ret: Identifier | MemberExpression = m.shift()!;
  while (m.length > 0) {
    ret = memberExpression(ret, m.shift());
  }
  return callExpression(ret, args);
}
開發者ID:Heigvd,項目名稱:Wegas,代碼行數:11,代碼來源:global.ts

示例3: createVariableAST

export function createVariableAST(name: string) {
  return callExpression(
    memberExpression(identifier('Variable'), identifier('find')),
    [identifier('gameModel'), stringLiteral(name)],
  ) as VariableAST;
}
開發者ID:Heigvd,項目名稱:Wegas,代碼行數:6,代碼來源:variableAST.ts

示例4: plugin


//.........這裏部分代碼省略.........
      path.traverse({
        Identifier(path) {
          if (path.node.ignoreInWithStatementVisitor) {
            return;
          }
          if (shouldSkipIdentifier(path)) {
            return;
          }
          if (
            ["WithStatement", "FunctionExpression"].includes(path.parent.type)
          ) {
            return;
          }
          if (path.parent.type === "MemberExpression") {
            if ((path.parent.property = path.node)) {
              console.log("ignoreing");
              return;
            }
          }
          path.node.ignoreInWithStatementVisitor = true;

          const identifierName = path.node.name;
          path.replaceWith(
            ignoreNode(
              t.conditionalExpression(
                ignoreNode(
                  t.binaryExpression(
                    "in",
                    addLoc(t.stringLiteral(identifierName), path.node.loc),
                    obj
                  )
                ),
                addLoc(
                  t.memberExpression(
                    obj,
                    addLoc(t.stringLiteral(identifierName), path.node.loc),
                    true
                  ),
                  path.node.loc
                ),
                i(addLoc(t.identifier(identifierName), path.node.loc))
              )
            )
          );
        }
      });
    },

    CatchClause(path) {
      const errName = path.node.param.name;
      // We don't track anything, but this var has to exist to avoid "err___tv is undeclared" errors
      const trackingVarDec = skipPath(
        t.variableDeclaration("let", [
          t.variableDeclarator(t.identifier(getTrackingVarName(errName)))
        ])
      );
      path.node.body.body.unshift(trackingVarDec);
    },

    ArrayPattern(path) {
      const isForOfStatementWithVarDeclaration =
        path.parentPath.node.type === "VariableDeclarator" &&
        path.parentPath.parentPath.parentPath.node.type === "ForOfStatement";
      const isForOfStatementWithoutVarDeclaration =
        path.parentPath.node.type === "ForOfStatement";
開發者ID:mattzeunert,項目名稱:fromjs,代碼行數:66,代碼來源:babelPlugin.ts


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