reasonSheet.js 766 B

12345678910111213141516171819202122232425
  1. function getInstance(context, selector = '#wr-reason-sheet') {
  2. if (!context) {
  3. const pages = getCurrentPages();
  4. const page = pages[pages.length - 1];
  5. context = page;
  6. }
  7. const instance = context && context.selectComponent(selector);
  8. if (!instance) {
  9. console.warn(`未找到reason-sheet组件,请检查selector是否正确`);
  10. return null;
  11. }
  12. return instance;
  13. }
  14. export default function (options) {
  15. const { context, selector, ..._options } = options;
  16. return new Promise((resolve, reject) => {
  17. const instance = getInstance(context, selector);
  18. if (instance) {
  19. instance.setData(Object.assign({}, _options));
  20. instance._onCancel = () => reject();
  21. instance._onConfirm = (indexes) => resolve(indexes);
  22. }
  23. });
  24. }