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


TypeScript effects.throttle函數代碼示例

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


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

示例1: testChannelThrottle

function* testChannelThrottle(): SagaIterator {
  // typings:expect-error
  yield throttle(1, channel)

  // typings:expect-error
  yield throttle(1, channel, (action: Action) => {})
  yield throttle(1, channel, (action: ChannelItem) => {})
  yield throttle(1, channel, action => {
    // typings:expect-error
    action.foo
    action.someField
  })

  const helperWorker1 = (a: 'a', action: ChannelItem) => {}

  // typings:expect-error
  yield throttle(1, channel, helperWorker1)
  // typings:expect-error
  yield throttle(1, channel, helperWorker1, 1)
  yield throttle(1, channel, helperWorker1, 'a')

  function* helperSaga1(a: 'a', action: ChannelItem): SagaIterator {}

  // typings:expect-error
  yield throttle(1, channel, helperSaga1)
  // typings:expect-error
  yield throttle(1, channel, helperSaga1, 1)
  yield throttle(1, channel, helperSaga1, 'a')

  const helperWorker7 = (a: 'a', b: 'b', c: 'c', d: 'd', e: 'e', f: 'f', g: 'g', action: ChannelItem) => {}

  // typings:expect-error
  yield throttle(1, channel, helperWorker7, 1, 'b', 'c', 'd', 'e', 'f', 'g')
  yield throttle(1, channel, helperWorker7, 'a', 'b', 'c', 'd', 'e', 'f', 'g')

  function* helperSaga7(a: 'a', b: 'b', c: 'c', d: 'd', e: 'e', f: 'f', g: 'g', action: ChannelItem): SagaIterator {}

  // typings:expect-error
  yield throttle(1, channel, helperSaga7, 1, 'b', 'c', 'd', 'e', 'f', 'g')
  yield throttle(1, channel, helperSaga7, 'a', 'b', 'c', 'd', 'e', 'f', 'g')

  yield throttle(1, eventChannel, (action: ChannelItem) => {})
  yield throttle(1, multicastChannel, (action: ChannelItem) => {})
}
開發者ID:rahulrcopart,項目名稱:redux-saga,代碼行數:44,代碼來源:effects.ts

示例2: testThrottle

function* testThrottle(): SagaIterator {
  // typings:expect-error
  yield throttle();
  // typings:expect-error
  yield throttle(1);

  /* action type */

  yield throttle(1, 'my-action', (action: Action) => {});
  // typings:expect-error
  yield throttle(1, 'my-action');
  // typings:expect-error
  yield throttle(1, 'my-action', (action: {someField: string}) => {});
  // typings:expect-error
  yield throttle(1, 'my-action', (a: 'a', action: Action) => {});
  // typings:expect-error
  yield throttle(1, 'my-action', (a: 'a', action: Action) => {}, 1);
  yield throttle(1, 'my-action', (a: 'a', action: Action) => {}, 'a');

  // typings:expect-error
  yield throttle(1, 'my-action', (action: Action) => {}, 1);

  // typings:expect-error
  yield throttle(1, 'my-action',
    (a: 'a', b: 'b', c: 'c', d: 'd', e: 'e', f: 'f', g: 'g',
     action: Action) => {},
    1, 'b', 'c', 'd', 'e', 'f', 'g'
  );

  yield throttle(1, 'my-action',
    (a: 'a', b: 'b', c: 'c', d: 'd', e: 'e', f: 'f', g: 'g',
     action: Action) => {},
    'a', 'b', 'c', 'd', 'e', 'f', 'g'
  );

  /* action predicate */

  yield throttle(1,
    (action: Action) => action.type === 'my-action',
    (action: Action) => {},
  );

  yield throttle(1,
    (action: Action) => action.type === 'my-action',
    (action: Action) => {},
  );
  yield throttle(1,
    (action: Action) => action.type === 'my-action',
    (a: 'a', action: Action) => {},
    'a',
  );

  yield throttle(1,
    (action: Action) => action.type === 'my-action',
    (a: 'a', b: 'b', c: 'c', d: 'd', e: 'e', f: 'f', g: 'g',
     action: Action) => {},
    'a', 'b', 'c', 'd', 'e', 'f', 'g',
  );

  yield throttle(1,
    isMyAction,
    action => action.customField,
  );

  yield throttle(1,
    isMyAction,
    (a, action) => action.customField + a.foo,
    {foo: 'a'},
  );

  yield throttle(1,
    stringableActionCreator,
    action => action.customField,
  );

  yield throttle(1,
    stringableActionCreator,
    (a, action) => action.customField + a.foo,
    {foo: 'a'},
  );

  yield throttle(1,
    stringableActionCreator,
    (a: 'a', b: 'b', c: 'c', d: 'd', e: 'e', f: 'f', g: 'g',
     action: Action) => {},
    'a', 'b', 'c', 'd', 'e', 'f', 'g',
  );
}
開發者ID:javarouka,項目名稱:redux-saga,代碼行數:88,代碼來源:effects.ts

示例3: testThrottle

function* testThrottle(): SagaIterator {
  // typings:expect-error
  yield throttle(1)
  // typings:expect-error
  yield throttle(1, 'my-action')

  yield throttle(1, 'my-action', (action: Action) => {})
  yield throttle(1, 'my-action', (action: MyAction) => {})
  yield throttle(1, 'my-action', function*(action: Action): SagaIterator {})
  yield throttle(1, 'my-action', function*(action: MyAction): SagaIterator {})

  const helperWorker1 = (a: 'a', action: MyAction) => {}

  // typings:expect-error
  yield throttle(1, 'my-action', helperWorker1)
  // typings:expect-error
  yield throttle(1, 'my-action', helperWorker1, 1)
  yield throttle(1, 'my-action', helperWorker1, 'a')

  function* helperSaga1(a: 'a', action: MyAction): SagaIterator {}

  // typings:expect-error
  yield throttle(1, 'my-action', helperSaga1)
  // typings:expect-error
  yield throttle(1, 'my-action', helperSaga1, 1)
  yield throttle(1, 'my-action', helperSaga1, 'a')

  const helperWorker7 = (a: 'a', b: 'b', c: 'c', d: 'd', e: 'e', f: 'f', g: 'g', action: MyAction) => {}

  // typings:expect-error
  yield throttle(1, 'my-action', helperWorker7, 1, 'b', 'c', 'd', 'e', 'f', 'g')
  // typings:expect-error
  yield throttle(1, 'my-action', helperWorker7, 'a', 'b', 'c', 'd', 'e', 'f')
  yield throttle(1, 'my-action', helperWorker7, 'a', 'b', 'c', 'd', 'e', 'f', 'g')

  function* helperSaga7(a: 'a', b: 'b', c: 'c', d: 'd', e: 'e', f: 'f', g: 'g', action: MyAction): SagaIterator {}

  // typings:expect-error
  yield throttle(1, 'my-action', helperSaga7, 1, 'b', 'c', 'd', 'e', 'f', 'g')
  // typings:expect-error
  yield throttle(1, 'my-action', helperSaga7, 'a', 'b', 'c', 'd', 'e', 'f')
  yield throttle(1, 'my-action', helperSaga7, 'a', 'b', 'c', 'd', 'e', 'f', 'g')

  yield throttle(1, (action: Action) => action.type === 'my-action', (action: Action) => {})
  yield throttle(1, isMyAction, action => action.customField)

  yield throttle(
    1,
    isMyAction,
    (a: { foo: string }, action: MyAction) => {
      a.foo + action.customField
    },
    { foo: 'bar' },
  )

  // typings:expect-error
  yield throttle(1, () => {}, (action: Action) => {})

  yield throttle(1, stringableActionCreator, action => action.customField)

  yield throttle(
    1,
    stringableActionCreator,
    (a: { foo: string }, action: MyAction) => {
      a.foo + action.customField
    },
    { foo: 'bar' },
  )

  yield throttle(
    1,
    ['my-action', (action: Action) => action.type === 'my-action', stringableActionCreator, isMyAction],
    (action: Action) => {},
  )

  // test inference of action types from action pattern
  const pattern1: StringableActionCreator<{ type: 'A' }> = null!
  const pattern2: StringableActionCreator<{ type: 'B' }> = null!

  yield throttle(1, [pattern1, pattern2], action => {
    if (action.type === 'A') {
    }

    if (action.type === 'B') {
    }

    // typings:expect-error
    if (action.type === 'C') {
    }
  })
  yield throttle(
    1,
    [pattern1, pattern2],
    (arg: { foo: string }, action: ActionMatchingPattern<typeof pattern1 | typeof pattern2>) => {
      if (action.type === 'A') {
      }

      if (action.type === 'B') {
      }

//.........這裏部分代碼省略.........
開發者ID:rahulrcopart,項目名稱:redux-saga,代碼行數:101,代碼來源:effects.ts


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