uni-app vue项目 全局搜索一个字符 直接在loading后显示关闭或继续等待

uni-app vue项目 全局搜索一个字符 直接在loading后显示关闭或继续等待

开发环境 版本号 项目创建方式
Windows w10
HBuilderX 3.2.16

操作步骤:

  • 每次都一样 直接挂

预期结果:

实际结果:

bug描述:

  • 我电脑配置 固态硬盘 +16G运行内存
  • 打开vue 项目 全局搜索一个字符 直接挂了
  • 要么显示关闭程序 要么显示继续等待响应


更多关于uni-app vue项目 全局搜索一个字符 直接在loading后显示关闭或继续等待的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

提供下运行日志(菜单【帮助 - 查看运行日志】,日志可以另存为txt,然后以附件形式发送给我们)。

更多关于uni-app vue项目 全局搜索一个字符 直接在loading后显示关闭或继续等待的实战教程也可以访问 https://www.itying.com/category-93-b0.html


uni-app 项目中,如果你希望在全局搜索某个字符,并在 loading 后直接显示“关闭”或“继续等待”的选项,你可以按照以下步骤实现:

1. 全局搜索字符

你可以使用 uni-app 提供的 uni.$emituni.$on 来实现全局事件监听和触发。

2. 在 loading 后显示选项

你可以在 loading 完成后,通过弹窗或自定义组件来显示“关闭”或“继续等待”的选项。

示例代码

1. 在 App.vue 中监听全局事件

<template>
  <div>
    <router-view></router-view>
  </div>
</template>

<script>
export default {
  onLaunch() {
    // 监听全局搜索事件
    uni.$on('globalSearch', (keyword) => {
      this.handleGlobalSearch(keyword);
    });
  },
  methods: {
    handleGlobalSearch(keyword) {
      // 显示 loading
      uni.showLoading({
        title: '搜索中...',
        mask: true
      });

      // 模拟搜索过程
      setTimeout(() => {
        uni.hideLoading();

        // 显示选项
        uni.showModal({
          title: '搜索完成',
          content: `是否继续等待 "${keyword}" 的搜索结果?`,
          confirmText: '继续等待',
          cancelText: '关闭',
          success: (res) => {
            if (res.confirm) {
              // 用户选择继续等待
              console.log('继续等待');
            } else if (res.cancel) {
              // 用户选择关闭
              console.log('关闭');
            }
          }
        });
      }, 2000); // 模拟2秒的搜索时间
    }
  }
};
</script>

2. 在任意页面触发全局搜索

<template>
  <view>
    <button @click="search">全局搜索</button>
  </view>
</template>

<script>
export default {
  methods: {
    search() {
      // 触发全局搜索事件
      uni.$emit('globalSearch', 'example');
    }
  }
};
</script>
回到顶部