UNPKG

nuke-modal

Version:

模态框

54 lines (51 loc) 1.27 kB
/** @jsx createElement */ import { isWeex, isWeb } from 'nuke-env'; export default function Confirm(message, callbackOrButtons) { let okTitle; let okCallback; let cancelCallback; let cancelTitle; if (typeof callbackOrButtons === 'function') { okCallback = callbackOrButtons; } else if (callbackOrButtons && callbackOrButtons[0]) { callbackOrButtons.forEach((btn, index) => { const callback = btn.onPress; const text = btn.text; if (index === 0) { okTitle = text; okCallback = callback; } else { cancelTitle = text; cancelCallback = callback; } }); } if (isWeex) { const Modal = require('@weex-module/modal'); okTitle = okTitle || 'OK'; cancelTitle = cancelTitle || 'Cancel'; if (Modal.confirm) { Modal.confirm( { message, okTitle, cancelTitle, }, (ret) => { if (ret === okTitle) { okCallback && okCallback(ret); } else { cancelCallback && cancelCallback(); } } ); } } else { const ret = confirm(message); if (ret) { okCallback && okCallback(ret); } else { cancelCallback && cancelCallback(); } } }