是否可以在离子侧边栏中使用幻灯片

2023-12-03

我正在用 ionic 构建一个移动应用程序,我想通过放置幻灯片来制作一个类似松弛的侧面菜单。

例如,当您单击主菜单项时,它将像 slack 一样在侧菜单中滑出另一张幻灯片。

我尝试在离子菜单中使用离子幻灯片,但幻灯片不起作用。

请查看屏幕截图。

enter image description here

这是代码片段。

<ion-menu [content]="mycontent" [swipeEnabled]="false">
    <ion-content>

      <ion-slides>
        <ion-slide>
          <h1>Slide 1</h1>
        </ion-slide>
        <ion-slide>
          <h1>Slide 2</h1>
        </ion-slide>
        <ion-slide>
          <h1>Slide 3</h1>
        </ion-slide>
      </ion-slides>

  </ion-content>

</ion-menu>

<ion-nav #mycontent [root]="rootPage"></ion-nav>

这就是我正在尝试构建的内容。

enter image description here

关于如何实现这一点有什么想法吗?

Thanks.


离子载玻片组件在底层使用了 Swiper 库。 Swiper 的部分初始化代码取决于了解幻灯片容器的宽度,并且该代码使用clientWidth为拿到它,为实现它。由于菜单以display:none,检索到的宽度始终为零,并且初始化代码会影响您。

您可以通过临时设置来解决这个问题display:block当 Swiper 初始化时。我的侧面菜单位于组件内,因此您可能需要根据您的情况调整此代码:

应用程序.html:

<sidebar [content]="content"></sidebar>
<ion-nav #content [root]="rootPage" swipeBackEnabled="false"></ion-nav>

侧边栏.html:

<ion-menu [content]="content" swipeEnabled="false">
  <ion-content>
    <ion-slides pager>
      <ion-slide>
        <h2>Slide 1</h2>
      </ion-slide>
      <ion-slide>
        <h2>Slide 2</h2>
      </ion-slide>
      <ion-slide>
        <h2>Slide 3</h2>
      </ion-slide>
    </ion-slides>
  </ion-content>
</ion-menu>

侧边栏.component.ts:

...
@Component({
  selector: 'sidebar',
  templateUrl: 'sidebar.html',
})
export class SidebarComponent implements AfterViewInit {
  @Input('content') content: NavController;

  @ViewChild(Slides) slides: Slides;
  @ViewChild(Menu, { read: ElementRef }) menuRef: ElementRef;

  // Use Renderer2 instead of direct DOM manipulation through the
  // ElementRef.nativeElement.
  //
  // @see: https://medium.com/@kmathy/angular-manipulate-properly-the-dom-with-renderer-16a756508cba
  //
  constructor(private renderer: Renderer2) {
  }

  // ViewChild template references might not be available until
  // AfterViewInit lifecycle hook runs.
  //
  // @see: https://blog.angular-university.io/angular-viewchild/
  //
  ngAfterViewInit() {
    this.renderer.setStyle(this.menuRef.nativeElement, 'display', 'block');
    setTimeout(() => {
      // Swiper init has its own ngAfterViewInit code that delays 300ms
      // before running. Don't remove the 'display' style until after that.
      this.renderer.removeStyle(this.menuRef.nativeElement, 'display');
    }, 310);
  }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以在离子侧边栏中使用幻灯片 的相关文章

  • 如何在 Ionic 3 中高效存储和使用身份验证

    我目前正在开发一个离子 3 4 适用于 iOS Android 的应用程序 我不熟悉身份验证过程或应用程序 在提供程序中使用 HTTP 请求后 我得到了我的对象 用户 但我完全不知道如何存储或处理它 有哪些好的做法 我是否应该将对象存储在提
  • 使用 Ionic core 4 时不会显示离子含量

    我正在开发一个使用 Vue js 和 Ionic 的应用程序 但我不明白为什么更新我的 Ionic 核心版本会破坏 ion content 标签 我尝试谷歌搜索该标签是否已停用 但似乎没有是这样的 为了说明这一点 我制作了一个使用 Ioni
  • 单击添加类和删除时切换类

    如果我单击项目 我需要添加类名 如果单击同一项目 则需要删除 ngFor 循环的类
  • 在 Ionic、ngCordova (AngularJS) 中的 Ionic Sqlite 中调用主控制器之前打开数据库?

    我有一个函数 init DB this db cordovaSQLite openDB name pasa db cordovaSQLite execute this db CREATE TABLE IF NOT EXISTS dashbo
  • 如何在 Ionic 中创建具有 + 和 - 按钮的输入框

    如何创建一个带有 和 按钮的输入框 单击哪个用户可以更改所选产品的数量 如下屏幕 这是 Ionic 2 的一个快速组合的示例 如果您使用 Ionic 1 您应该能够很容易地适应它 您只需要几个控制器 类函数来递增和递减 然后通过按钮调用它们
  • 如何将 Font Awesome 添加到 Ionic 4

    有很多关于如何将 Font Awesome 添加到 Ionic 3 项目中的教程和文章 但我很难找到有关如何将 Font Awesome 添加到 Ionic 4 项目中的教程和文章 那么这就提出了一个问题 如何在 Ionic 4 项目中添加
  • 打字稿错误:将覆盖输入文件

    我已经更新了最新的离子版本 https github com ionic team ionic releases tag v3 3 0并删除src declarations d ts文件 现在 当我尝试运行应用程序时 我的应用程序显示以下错
  • 离子和电容器 - Android 启动画面响应能力

    Context 这与闪屏图像响应能力有关 根据我的研究 它之所以发生是因为缺少文档电容器文档 启动画面 https capacitorjs com docs apis splash screen Problem 当实现电容器的闪屏插件时 问
  • 设备收到 GCM Android 通知但未显示

    尽管通知已在应用程序本身中注册 但我的 Ionic Android 应用程序的 GCM Cloud 消息通知未出现在我的设备的主屏幕中 我正在使用 npm 模块node gcm https www npmjs com package nod
  • Ionic 框架:创建项目时 Ionic 构建失败 (v4.12.0)

    I have ionic安装在我的系统中 当我跑步时ionic run app tabs它安装了所有npm包 但随后提示符变为 Downloading binary from https github com sass node sass
  • AWS Amplify AppSync 订阅无法正常工作

    我编写了一个小型应用程序 使用 AWS Amplify CLI AppSync 订阅数据库更改 所有 amplify api 调用都可以完美工作 突变 查询 但不幸的是观察者没有收到事件 我可以看到 MQTT 套接字定期接收二进制文件 但我
  • Ionic 2 自定义后退按钮操作

    我想自定义此屏幕截图中提到的后退按钮的单击操作 我希望通过单击我不会返回到上一页 而是返回到我自己指定的页面 或者在返回之前进行处理 要自定义默认后退按钮操作 您需要覆盖返回按钮点击 NavBar 组件的方法 Step 1 在你的 自定义类
  • 有没有办法让 ion-segment 在 iOS 和 Android 上看起来一样?

    设置ion segment模式后 在ionic lab中渲染后看起来还是不一样 我尝试将离子段和离子工具栏的模式设置为 md 但它们看起来仍然不同 https ibb co HV75Ly2 https ibb co HV75Ly2这是设置模
  • 带有移动前端UI框架的流星[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 有人将meteor与移动前端框架集成吗 为了使移动 html5 应用程序看起来 更原生 有许多 CSS 前端框架 例如 流星http
  • 如何向离子推送通知添加操作按钮?

    我想向离子推送通知添加一些操作按钮 我正在使用科尔多瓦pushv5 通知工作正常 但我不知道如何添加这些按钮 如何添加这些按钮 应在 POST 请求中添加操作按钮 registration ids my device id data tit
  • 如何在ionic 2中创建覆盖页面?

    当我进入新页面时如何创建透明的引导覆盖页面 我如何在 ionic 2 中实现 您可以在外部创建 div
  • 如何知道在Angular JS中选择了哪个元素

    我制作了多个选定的弹出窗口 用户可以在其中选择多个值 我想在屏幕上打印所有选定的值或获取一个对象 其中包含用户选择的所有元素 我将换句话说 在我的演示中 我在屏幕上有一个按钮 单击按钮时 我会打开一个弹出窗口 其中有多个选定的元素我想获取用
  • Ionic 2 http.get() 问题

    我试着做一个http get 用这两个方法调用 First getResults return this http get http localhost api php toPromise then data gt data json 显示
  • (Ionic 2)尝试回退到 Cordova-lib 执行时发生错误:TypeError:无法读取未定义的属性“then”

    Edit 使用 ionic 2 时会发生这种情况 我知道它还不稳定 但我认为可能有一些解决方案 因为其他人似乎没有遇到这个问题 Edit end 由于某种原因 我在尝试使用 ionic build android 和 ionic build
  • 为范围旋钮 ionic-range 添加边框颜色

    我正在使用离子范围添加范围滑块 并想向范围旋钮添加边框 由于它的 ionic4 和范围旋钮是 Shadow dom 的一部分 我无法使用范围旋钮的 border 属性直接更改边框 我已附上我想要实现的图像 范围旋钮周围有白色边框 现有属性只

随机推荐

  • 求解线性方程。使用 numpy 的三个变量[重复]

    这个问题在这里已经有答案了 我目前需要一门课程 它必须能够显示和求解如下所示的方程系统 2x 4y 4z 8 34x 3y z 30 x y z 108 我认为编写一个类将方程系统的左侧事物转换为类似矩阵的对象是一个好主意 这是该系统的自制
  • 最大并发 Socket.IO 连接数

    这个问题以前曾被问过 但最近没有被问过 也没有明确的答案 使用 Socket io 在需要添加另一台服务器之前 是否存在可以维持的最大并发连接数 有谁知道有哪些活跃的生产环境正在大规模使用 websockets 特别是 socket io
  • 如何在 ClickHouse 中向可执行 UDF 发送多个参数?

    我有一个输出输入的 python 脚本 usr bin python3 import sys if name main i 0 for line in sys stdin print i line end sys stdout flush
  • MySql REGEXP 运算符

    mySql REGEXP 运算符不区分大小写 该运算符是否有一个版本is区分大小写 Use the BINARY关键字 这迫使REGEXP将字符串匹配为二进制字符串 区分大小写 SELECT a REGEXP A a REGEXP BINA
  • Apache:禁用目录中的 php

    我想在我的服务器上的目录中禁用 php 我认为在 httpd conf 中设置 Options ExecCGI 会阻止执行 php 脚本 但显然我错了 所以 这就是我的 httpd conf 中的内容 它显然不起作用
  • ImportError:无法从“sklearn.base”导入名称“MultiOutputMixin”

    我只想用 scikit learn 进行线性回归 当我尝试导入线性模型包时 出现标题中的错误消息 我尝试遵循类似问题的解决方案 link 该建议基本上是删除请求 MultipleOutputMixin 的代码部分 当我这样做时 MultiO
  • 如何截取 YouTube 屏幕截图

  • 当用户关闭窗口选项卡时 JavaScript 发出警报

    我希望当用户关闭选项卡或窗口时 或者当他尝试移动到与我的站点不同的另一个位置时 弹出一个确认框 并且如果他确认执行 ajax 脚本 然后关闭或更改窗口 我不知道该怎么做 PS 我正在使用 jQuery window unload funct
  • 自定义 HtmlHelper 扩展方法在视图中不可用?

    我翻译了耶利米 克拉克的MVC 的复选框列表助手进入我的 VB Net 项目 但是当我尝试使用我认为的方法时 出现错误 CheckBoxList is not a member of System Web Mvc HtmlHelper Of
  • 如何以编程方式使折线图点处于活动/突出显示状态

    我使用的是 Chart js 2 0 beta2 页面和滑块上有几个折线图 我想突出显示每个折线图上与滑块位置匹配的数据点 它们都具有相同的点数 我不知道如何轻松地在代码中激活一个点 感谢您的任何提示 2 0 测试版解决方案 扩展您选择的图
  • 来自 JavaScript 的 JavaFX WebView 向上调用不起作用

    我有一个 JavaFX WebView 想要从 Web 视图中显示的 test html 调用 JavaBridge 类的方法 hello 为什么这不起作用 我确保 桥 对象仅在页面完全呈现时添加到 window object 因此这可能不
  • 能够在 print_r() 的输出中看到变量,但不确定如何在代码中访问它

    我用谷歌搜索 安装了 Devel Drupal for Firebug 但我找不到它 I found what我想要 我知道where这是 我只是不知道how为拿到它 为实现它 我将把它放在代码括号中 但 Devel 告诉我文件名 我想将其
  • 如何打印字符串中的每个字符?

    有没有一种方法可以一次从输入中读取一个字符并对其进行处理 而不需要对词汇进行标记 字符串上的 toCharArray 函数在这里可能很有用 for char c s toCharArray System out println c 并仅打印
  • 广播接收器作为 Android 中的内部类

    在我的代码中有一个扩展的内部类BroadcastReceiver 我已将以下行添加到AndroidManifest xml
  • 导入库项目时出现 NoClassDefFoundError

    我目前正在使用版本 4 6 1 Windows Vista Eclipse 编写一个单元测试项目 我的项目分为 3 部分 A 单元测试应用程序 类型 CLDC应用程序 B 待测试应用 类型 CLDC应用 C 一个库项目 类型 library
  • Portlet 中的 YUI 版本冲突问题

    我正在从 portlet 加载 yui js 3 3 0 版本文件 但 liferay 使用 3 2 0 yui js 文件 所以每当我加载该页面时 就会出现 js 错误 G ENV loaded VERSION 未定义 此错误出现在 yu
  • Struts2教程不起作用

    我正在学习struts2 我根据以下内容尝试我的 hello world 项目tutorial然后我在 eclipse 中运行代码 但这不起作用 控制台显示很多错误 第一个如下 com opensymphony xwork2 util lo
  • Iss 声明无效 Keycloak

    我使用 keycloak 服务登录我的网络应用程序 用作具有 oauth 2 0 安全性的后端 spring 当我使用从 keycloak 获得的不记名令牌向邮递员发出请求时 它给了我一个错误 401 并且也在旁边的答案文本中www Aut
  • 通过安全规则中的某个子值限制查询

    我正在努力想出构建部分数据库及其相关安全规则的最佳方法 我有聊天组 并且可以随时将用户添加到这些组中 当用户添加到组中时 他们应该只能检索发送的消息after那 他们不应该检索在他们 用户 添加到组之前发送的任何消息 我的第一种方法错误地假
  • 是否可以在离子侧边栏中使用幻灯片

    我正在用 ionic 构建一个移动应用程序 我想通过放置幻灯片来制作一个类似松弛的侧面菜单 例如 当您单击主菜单项时 它将像 slack 一样在侧菜单中滑出另一张幻灯片 我尝试在离子菜单中使用离子幻灯片 但幻灯片不起作用 请查看屏幕截图 这