• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

TypeScript actions.isType函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了TypeScript中state/actions.isType函数的典型用法代码示例。如果您正苦于以下问题:TypeScript isType函数的具体用法?TypeScript isType怎么用?TypeScript isType使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了isType函数的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。

示例1: mockable

export const sendActionToServer = (action: Action<any>):Promise<any> => {
  const pathname = mockable(() => location.pathname)
  const requester = mockable(() => jsonRequest)
  const url_token = pathname.split('/')[3]

  if (isType(action, createStickyAction)) {
    return requester({uri: '/api/stickies', method: 'POST', body: combine(action.payload, {url_token})})
  }

  if (isType(action, interactionFinishedStickyAction)) {
    const sticky = getState().stickies.get(action.payload.uuid)
    const command = {
      x: sticky.x,
      y: sticky.y,
      uuid: action.payload.uuid,
      url_token,
      body: sticky.body
    }
    
    return requester({uri: '/api/stickies', method: 'PUT', body: command})
  }

  console.error('Warning: Unhandled persistence action: ', action.type)
  return Promise.resolve()
}
开发者ID:mlawrie,项目名称:sticky-board,代码行数:25,代码来源:sendActionToServer.ts


示例2:

export const boardReducers = (state: Board = {initialLoadPending: true, name: '', notFound: false}, action: Action<any>): Board => {
  if (isType(action, boardLoadedAction)) {
    return {initialLoadPending: false, name: action.payload.name, notFound: false}
  }
  
  if (isType(action, boardNotFoundAction)) {
    return {initialLoadPending: false, name: '', notFound: true}
  }
  
  return state
}
开发者ID:mlawrie,项目名称:sticky-board,代码行数:11,代码来源:boardReducers.ts


示例3:

export const persistenceQueueReducers = (state: PersistenceQueue = Immutable.List<QueueItem>(), action: Action<any>): PersistenceQueue => {
  if (isType(action, createStickyAction) || isType(action, interactionFinishedStickyAction)) {
    return state.push(makeQueueItem(action))   
  }

  if(isType(action, persistenceQueueSuccessAction)) {
    const queueUuid = action.payload.queueUuid
    return state.filter((value) => typeof value !== 'undefined' && value.queueUuid != queueUuid).toList()
  }
  
  return state
}
开发者ID:mlawrie,项目名称:sticky-board,代码行数:12,代码来源:persistenceQueueReducers.ts


示例4: modifySticky

export const stickiesReducers = (state: Stickies = Immutable.Map<string, Sticky>(), action: Action<any>): Stickies => {
  const getUuuid = (sticky:Sticky) => state.keyOf(sticky)
  
  if (isType(action, createStickyAction) || isType(action, loadStickyFromServerAction)) {
    const sticky = {
      x: action.payload.x,
      y: action.payload.y,
      editing: false,
      body: action.payload.body,
      z: state.size + 1
    }
    return state.set(action.payload.uuid, sticky)
  }
   
  if (isType(action, updateStickyAction)) {
    const sticky = modifySticky(state.get(action.payload.uuid), {
      x: action.payload.x,
      y: action.payload.y,
      editing: action.payload.editing,
      body: action.payload.body
    })
    return state.map(markNotEdited).toMap().set(action.payload.uuid, sticky)
  }
  
  if (isType(action, moveStickyToTopAction)) {
    const existingSticky = state.get(action.payload.uuid)
    const foregroundSticky = modifySticky(existingSticky, {z: state.size})
   
    const otherUuids = state.keySeq().toArray().filter((uuid) => uuid !== action.payload.uuid)
    const sorted = otherUuids.map((uuid) => ({uuid, sticky: state.get(uuid)}))
        .sort((a, b) => a.sticky.z - b.sticky.z)
   
    
    const assignZ = (sticky:Sticky) => modifySticky(sticky, {z: 1 + lodash.findIndex(sorted, (el) => el.uuid === getUuuid(sticky))})
    
    return state.map(assignZ).toMap().set(action.payload.uuid, foregroundSticky)
  }
  
  if (isType(action, removeStickyAction)) {
    return state.filter((value, key) => key != action.payload.uuid).toMap()
  }
  
  return state
}
开发者ID:mlawrie,项目名称:sticky-board,代码行数:44,代码来源:stickyReducers.ts


示例5:

export const canvasReducers = (state: Canvas = {x: 0, y: 0}, action: Action<any>): Canvas => {
  if (isType(action, moveCanvasPositionAction)) {
    return {x: state.x + action.payload.x, y: state.y + action.payload.y}
  }
  return state
}
开发者ID:mlawrie,项目名称:sticky-board,代码行数:6,代码来源:canvasReducers.ts



注:本文中的state/actions.isType函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
TypeScript reduxStore.dispatch函数代码示例发布时间:2022-05-25
下一篇:
TypeScript actions.createStickyAction函数代码示例发布时间:2022-05-25
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap