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


TypeScript is.object函數代碼示例

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


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

示例1: BigQueryDatetime

(BigQuery as any).datetime = BigQuery.prototype.datetime = function BigQueryDatetime(
  value
) {
  if (!(this instanceof (BigQuery as any).datetime)) {
    return new (BigQuery as any).datetime(value);
  }

  if (is.object(value)) {
    let time;

    if (value.hours) {
      time = (BigQuery as any).time(value).value;
    }

    value = format('{y}-{m}-{d}{time}', {
      y: value.year,
      m: value.month,
      d: value.day,
      time: time ? ' ' + time : '',
    });
  } else {
    value = value.replace(/^(.*)T(.*)Z$/, '$1 $2');
  }

  this.value = value;
};
開發者ID:brgmn,項目名稱:nodejs-bigquery,代碼行數:26,代碼來源:index.ts

示例2: BigQueryDate

(BigQuery as any).date = BigQuery.prototype.date = function BigQueryDate(value) {
  if (!(this instanceof (BigQuery as any).date)) {
    return new (BigQuery as any).date(value);
  }

  if (is.object(value)) {
    value = (BigQuery as any).datetime(value).value;
  }

  this.value = value;
};
開發者ID:brgmn,項目名稱:nodejs-bigquery,代碼行數:11,代碼來源:index.ts

示例3: function

(BigQuery as any).getType_ = function(value) {
  let typeName;

  if (value instanceof (BigQuery as any).date) {
    typeName = 'DATE';
  } else if (value instanceof (BigQuery as any).datetime) {
    typeName = 'DATETIME';
  } else if (value instanceof (BigQuery as any).time) {
    typeName = 'TIME';
  } else if (value instanceof (BigQuery as any).timestamp) {
    typeName = 'TIMESTAMP';
  } else if (value instanceof Buffer) {
    typeName = 'BYTES';
  } else if (value instanceof Big) {
    typeName = 'NUMERIC';
  } else if (is.array(value)) {
    return {
      type: 'ARRAY',
      arrayType: (BigQuery as any).getType_(value[0]),
    };
  } else if (is.bool(value)) {
    typeName = 'BOOL';
  } else if (is.number(value)) {
    typeName = value % 1 === 0 ? 'INT64' : 'FLOAT64';
  } else if (is.object(value)) {
    return {
      type: 'STRUCT',
      structTypes: Object.keys(value).map(function(prop) {
        return {
          name: prop,
          type: (BigQuery as any).getType_(value[prop]),
        };
      }),
    };
  } else if (is.string(value)) {
    typeName = 'STRING';
  }

  if (!typeName) {
    throw new Error(
      [
        'This value could not be translated to a BigQuery data type.',
        value,
      ].join('\n')
    );
  }

  return {
    type: typeName,
  };
};
開發者ID:brgmn,項目名稱:nodejs-bigquery,代碼行數:51,代碼來源:index.ts

示例4: BigQueryTime

(BigQuery as any).time = BigQuery.prototype.time = function BigQueryTime(value) {
  if (!(this instanceof (BigQuery as any).time)) {
    return new (BigQuery as any).time(value);
  }

  if (is.object(value)) {
    value = format('{h}:{m}:{s}{f}', {
      h: value.hours,
      m: value.minutes || 0,
      s: value.seconds || 0,
      f: is.defined(value.fractional) ? '.' + value.fractional : '',
    });
  }

  this.value = value;
};
開發者ID:brgmn,項目名稱:nodejs-bigquery,代碼行數:16,代碼來源:index.ts

示例5: default

export default ({ gstore }: Context, { blog }: Modules): AdminRoutesHandlers => {
  const { blogPostDomain } = blog.blogPost;
  const { protectedBlogPosts } = blogPostDomain;

  return {
    async dashboard(req, res) {
      const template = 'admin/dashboard';

      let posts;
      try {
        posts = await blogPostDomain.getPosts({
          cache: req.query.cache !== 'false',
        });
      } catch (error) {
        return res.render(template, {
          error,
          pageId: 'admin-index',
        });
      }

      res.render(template, {
        posts: posts.entities,
        pageId: 'admin-index',
        protectedBlogPosts: protectedBlogPosts.join(','),
      });
    },
    async createPost(req, res) {
      const template = 'admin/edit';
      const dataloader = gstore.createDataLoader();

      if (req.method === 'POST') {
        const entityData = Object.assign({}, req.body, { file: req.file });

        try {
          await blogPostDomain.createPost(entityData, dataloader);
        } catch (err) {
          return res.render(template, {
            blogPost: entityData,
            error: is.object(err.message) ? err.message : err,
          });
        }

        return res.redirect('/admin?cache=false');
      }

      return res.render(template, {
        pageId: 'blogpost-edit',
      });
    },
    async editPost(req, res) {
      const template = 'admin/edit';
      const pageId = 'blogpost-edit';
      const dataloader = gstore.createDataLoader();
      const { id } = req.params;

      if (req.method === 'POST') {
        const entityData = Object.assign({}, req.body, { file: req.file });

        try {
          await blogPostDomain.updatePost(id, entityData, dataloader, true);
        } catch (err) {
          return res.render(template, {
            post: Object.assign({}, entityData, { id }),
            pageId,
            error: is.object(err.message) ? err.message : err,
            protectedBlogPosts: protectedBlogPosts.join(','),
          });
        }

        return res.redirect('/admin?cache=false');
      }

      let post;
      try {
        post = await blogPostDomain.getPost(id, dataloader);
      } catch (err) {
        return res.render(template, {
          post: {},
          pageId,
          error: is.object(err.message) ? err.message : err,
          protectedBlogPosts: protectedBlogPosts.join(','),
        });
      }

      if (!post) {
        return res.redirect('/404');
      }

      res.render(template, {
        post,
        pageId,
        protectedBlogPosts: protectedBlogPosts.join(','),
      });
    },
  };
};
開發者ID:sebelga,項目名稱:blog-app-googlecloud,代碼行數:96,代碼來源:admin.routes-handlers.ts


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