本文整理汇总了TypeScript中redux-saga/lib/effects.js.call方法的典型用法代码示例。如果您正苦于以下问题:TypeScript js.call方法的具体用法?TypeScript js.call怎么用?TypeScript js.call使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类redux-saga/lib/effects.js
的用法示例。
在下文中一共展示了js.call方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: iter
let addr = _addr // head at first call, then next
function* iter(addr) {
if (addr != 0) {
const vote = yield call(getVote, proposalId, addr)
votes.push({voterAddr: addr, proposalId: proposalId, voteValue: vote[0]})
addr = vote[1] // next voter
yield call(iter, addr)
}
}
示例2: fetchAllProposalsWorker
function* fetchAllProposalsWorker() {
try {
const totalProposals = yield call(getTotalProposals)
let proposals = yield call(generateProposalList, totalProposals.valueOf())
yield put({type: 'ALL_PROPOSALS_SUCCEED', values: {proposals}})
} catch (e) {
yield put({type: 'ALL_PROPOSALS_FAILED', e: e.message})
}
}
示例3: revokeMemberWorker
function* revokeMemberWorker(action) {
try {
const tx = yield call(revokeMember, action.values)
yield call(waitForMined, tx, 'revokeMember')
yield put({type: 'TX_REVOKE_MEMBER_SUCCEED', tx})
yield put({type: 'ALL_MEMBERS_REQUESTED'})
} catch (e) {
yield put({type: 'TX_REVOKE_MEMBER_FAILED', e: e.message})
}
}
示例4: transferOwnershipWorker
function* transferOwnershipWorker(action) {
try {
let ownerAddress = yield select(s => s.dao.ownerAddress)
const tx = yield call(transferOwnership, ownerAddress, action.values.newOwnerAddress)
yield call(waitForMined, tx, 'transferOwnership')
yield put({type: 'TX_TRANSFER_OWNERSHIP_SUCCEED', tx, values: {ownerAddress: action.values.newOwnerAddress}})
} catch (e) {
yield put({type: 'TX_TRANSFER_OWNERSHIP_FAILED', error: e})
}
}
示例5: fetchAllMembersWorker
function* fetchAllMembersWorker() {
const {Dao1901Members} = contracts
try {
// Get the head of the linked list - Either 0x0 or the last added
const head = yield call(Dao1901Members.head)
const members = yield call(fetchAllMembers, head)
yield put({type: 'ALL_MEMBERS_SUCCEED', values: {members}})
} catch (e) {
yield put({type: 'ALL_MEMBERS_FAILED', error: e})
}
}
示例6: createProposalWorker
function* createProposalWorker({values}) {
try {
const {proposalDescription, proposalDeadline} = values
const tx = yield call(createProposal, proposalDescription, proposalDeadline)
yield call(waitForMined, tx, 'create proposal')
yield put({type: 'TX_CREATE_PROPOSAL_SUCCEED', tx})
yield put({type: 'ALL_PROPOSALS_REQUESTED'})
} catch (e) {
yield put({type: 'TX_CREATE_PROPOSAL_FAILED', e: e.message})
}
}
示例7: onVoteSubmitWorker
function* onVoteSubmitWorker(action) {
try {
const {proposalId, voteValue} = action.values
const tx = yield call(onVoteSubmit, proposalId, voteValue)
yield call(waitForMined, tx, 'onVoteSubmit') // setInterval until mined
yield put({type: 'TX_VOTE_SUBMISSION_SUCCEED', tx})
yield put({type: 'ALL_VOTES_FOR_ALL_PROPOSALS_REQUESTED'})
} catch (e) {
yield put({type: 'TX_VOTE_SUBMISSION_FAILED', e: e.message})
}
}
示例8: iter
function* iter() {
if (addr != 0 && addr != '0x' && addr != '0x0') {
let isMember = yield call(Dao1901Members.isMember, addr)
let subscription = yield call(Dao1901Members.subscriptions, addr)
endSubscriptionDate = subscription[0].toString()
isMember && members.push({memberAddress: addr, endSubscriptionDate})
// take the next element to follow the linked list
addr = subscription[1]
yield call(iter, addr)
}
}
示例9: addMemberWorker
function* addMemberWorker(action) {
try {
const {memberAddress, yearsDuration} = action.values
const tx = yield call(addMember, memberAddress, yearsDuration)
yield call(waitForMined, tx, 'addMember')
let endSubscriptionDate = new Date().setFullYear(new Date().getFullYear() + Number(yearsDuration))
endSubscriptionDate = String(endSubscriptionDate).substring(0,10)
let _members = yield select(s => s.dao.members)
const members = [..._members, {memberAddress, endSubscriptionDate}]
yield put({type: 'TX_ADD_MEMBER_SUCCEED', tx, values: {members}})
} catch (e) {
yield put({type: 'TX_ADD_MEMBER_FAILED', e: e.message})
}
}
示例10: fetchAllVotesForAllProposalsWorker
export function* fetchAllVotesForAllProposalsWorker() {
try {
let votes = {}
let proposalId = 1
const totalProposals = yield call(getTotalProposals)
while (proposalId <= totalProposals.valueOf()) {
let votesProp = yield call(fetchVotesForAProposal, proposalId)
votes[proposalId] = votesProp
proposalId++
}
yield put({type: 'ALL_VOTES_FOR_ALL_PROPOSALS_SUCCEED', values: {votes}})
} catch (e) {
yield put({type: 'ALL_VOTES_FOR_ALL_PROPOSAL_FAILED', e: e.message})
}
}