离子选项卡:如何在不同选项卡中重用相同的详细信息页面

2024-01-09

这是两篇文章,基本上描述了与我相同的需求。不幸的是,这些都没有具体的解决方案。

http://forum.ionicframework.com/t/reuse-master-detail-page-template- Between-tabs/17493 http://forum.ionicframework.com/t/reuse-master-detail-page-template-between-tabs/17493

http://forum.ionicframework.com/t/same-detail-page-for-2- Different-tabs-with-history/17425 http://forum.ionicframework.com/t/same-detail-page-for-2-different-tabs-with-history/17425

为了更好地解释我们想要实现的目标,请参阅下面的两张图表。

我相信图1无需解释因为它是选项卡 UI 组件的经典用法。

然而,在chart 2,我们可以看到,如果每个选项卡都需要重用相同的主从控制器和模板,则不可能实现开箱即用,最大的困难是 ui-router 的静态/声明性性质。

具体来说,我能够正确设置一切,直到主视图为止。我实际上可以在 3 个选项卡中重复使用相同的列表(主),当我单击一行时,会出现详细信息页面,这很好。不幸的是,它切换到第一个选项卡!

所以问题是,如何在保留当前选定选项卡的同时重用模板和控制器代码一直到详细信息页面?

换句话说:我想要一个详细信息页面,当您单击任何列表中的任何选项卡中的任何项目时,该详细信息页面会显示在相应的选项卡中。

以下代码显示 ui-router 强制您指向“硬编码”视图名称,在本例中为“profile-into”:

.state('profile.intro', {
            url: '/intro/:username',
            views: {
                **'profile-intro'**: {
                    templateUrl: 'app/profile/views/profile-intro.html',
                    controller: 'ProfileIntroCtrl'
                }
            }
        })

我需要动态设置视图名称。

我认为某种全局控制器加上指令可以解决这个问题,但我无法理解它......

任何帮助是极大的赞赏 !!


在 Ionic 论坛上发布了回复,但我想我也应该在这里复制它......

我遇到了类似的问题,我需要跨选项卡重用模板并保持用户处于活动选项卡中。我结束使用$ionicTabsDelegate在我的控制器中,通过执行类似的操作来获取选项卡索引$scope.selectedTabIndex = $ionicTabsDelegate.selectedIndex();

我的问题是有正确的路线。我为每个引用相同模板但具有不同 URL 的选项卡创建了路由。然后在我的模板中加载selectedTabIndex,当我需要链接到另一个视图时,我在函数中传递了选项卡索引来更改状态。

例如,在我重新使用的模板中,我有以下内容:

ng-click="viewUser(id, selectedTabIndex);"

在我的控制器中,我有这样的东西:

$scope.viewUser = function(uid, tabIndex){
    if(tabIndex == 2){
        $state.go('tab.me-user',{ uid: uid});
    } else {
        $state.go('tab.user-profile',{ uid: uid});
    }
};

我宁愿有多个路线而不是多个模板,所以这对我来说很有效。我很想看看其他人是否想出另一种方法来实现这一目标。

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

离子选项卡:如何在不同选项卡中重用相同的详细信息页面 的相关文章

  • 如何设置带有选项卡的多个滑动视图的默认选项卡?

    我真的被困住了 我在主要活动中使用选项卡进行了四个滑动视图 但我想要的是当用户打开应用程序时 它会自动显示第二个选项卡而不是第一个选项卡 这是我的 MainActivity java public class MainActivity ex
  • 如何在 Flutter 中使用函数创建动态 TabBarView/ 渲染新 Tab?

    所以我学习flutter有一段时间了 就卡在这个了 抱歉 如果这是一个新手问题 我目前正在尝试构建类似卡片选项卡的东西 信息和小部件将存储在卡中 想象一下像 Tinder 这样的东西 他们有多个卡片堆 并且左右滑动即可导航 我计划创建它 但
  • Ionic 4 键盘覆盖输入字段

    我有一个 Ionic 4 应用程序 其中有一个包含输入的表单 当用户单击输入时 它会打开键盘 但会隐藏内容 而不滚动 有没有办法解决 这是我的代码
  • Cordova 插件不适用于 Ionic

    我正在 Angular 中构建一个 Ionic 应用程序 但一直无法让插件工作 例如 我尝试使用状态栏插件 如下所述 http ionicframework com tutorials fullscreen apps http ionicf
  • 在 ionic 3 应用程序中找不到命名空间“google”

    在我尝试在项目中使用 google 变量后 任何人都可以帮我解决这个错误 我进入了 ionic 3 应用程序 npm install save types google maps 将以下内容添加到我的 package json 中 type
  • AWS Amplify AppSync 订阅无法正常工作

    我编写了一个小型应用程序 使用 AWS Amplify CLI AppSync 订阅数据库更改 所有 amplify api 调用都可以完美工作 突变 查询 但不幸的是观察者没有收到事件 我可以看到 MQTT 套接字定期接收二进制文件 但我
  • Ionic Cordova Build Android 未找到已安装的构建工具

    我在 Ubuntu 16 04 上的 Android 上构建 ionic 应用程序时遇到问题 这是我为了实现这一目标所做的一步 下载Android Studio 下载Android SDK 在 bashrc 和 bash profile 中
  • Cordova,为什么需要 InAppBrowser 插件才能在系统浏览器中打开链接

    我有一个 Cordova 应用程序 它是一个带有单个 HTML 文件的单页应用程序 所有链接都应在系统浏览器中打开 我不需要 嵌入式 InAppBrowser 而是真正的本机系统 外部浏览器 我们到处都可以找到使用 InAppBrowser
  • 有没有办法让 ion-segment 在 iOS 和 Android 上看起来一样?

    设置ion segment模式后 在ionic lab中渲染后看起来还是不一样 我尝试将离子段和离子工具栏的模式设置为 md 但它们看起来仍然不同 https ibb co HV75Ly2 https ibb co HV75Ly2这是设置模
  • 带有添加新选项卡按钮 (+) 的 TabControl

    在 WPF 中选项卡控件的选项卡条中的所有选项卡项的末尾添加 按钮选项卡的正确方法是什么 它应该可以正确地处理多个选项卡标题行 它应该位于所有选项卡项目的末尾 Tab cycling should work correctly Alt Ta
  • Ionic iPhone X 安全区域无法正常工作

    我正在尝试在顶部工具栏和底部选项卡区域之间安装一个 我需要它能够在 iPhone 5 X 和 iOS 10 11 上运行 如果你忽略iOS10 那么就不存在问题 但我还需要旧版本才能工作 这是我的 CSS margin top 在 iOS
  • FileReader 在 Ionic 2 中未触发 onloadend

    我正在尝试使用 cordova file plugin 读取本地文件 目前我可以读取本地目录的内容并选择单个文件 但我在获取文件内容时遇到问题 这是我的函数 从列表中选择文件后单击按钮即可调用该函数 import window resolv
  • 当我在控制器中使用 state.go 时,离子滑动菜单不会出现

    大家好 我正在使用 ionic 来构建我的应用程序 并且我放置了幻灯片菜单 问题是当我使用 stage go 更改视图时 此工作正常 但幻灯片菜单失败 那么我该如何解决这个问题 路由器 use strict var app angular
  • Netbeans 8.1 Gnome 3 GTK+ UI 字体和选项卡高度

    我刚刚在运行 GNOME 3 桌面的 Ubuntu 16 04 上安装了 NetBeans 8 1 如果可能的话 我想继续使用 IDE 的 GTK 外观和感觉 但 UI 上的字体 尤其是选项卡中的字体 太小且重叠 我尝试添加 fontsiz
  • 无法使用cordova-plugin-file-transfer上传base64图像

    我正在尝试使用 cordova plugin file transfer 将 Base64 格式的图像上传到我的服务器 但到目前为止它还无法正常工作 我的代码是这样的 photoBase64 photoBase64 replace data
  • Ionic-Angular.js 拍照并发送到服务器:空图像

    因此 我设法使用自定义指令通过 Angular js 将图像上传到我的服务器 我还成功地实现了 Cordova 的相机功能 现在我尝试连接两者 但是当将图像发送到服务器时 它们被存储为空 我认为问题在于我使用输入字段来获取图像 并且它获取了
  • Ionic 移动应用程序的 LocalForage 大小限制

    我正在使用 Ionic 框架构建移动应用程序 我的应用程序大量使用离线数据库 我的第一次尝试是使用ng存储 https github com gsklee ngStorage它使用 localStorage 但一段时间后我达到了大小配额限制
  • Android - iphone 风格 tabhost [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • HTML:如何强制链接在新选项卡而不是新窗口中打开[重复]

    这个问题在这里已经有答案了 I use target blank 在新选项卡中打开链接 但在 IE 中它会打开一个新窗口 这是完全合乎逻辑的 因为这就是 blank应该做的 我不知道如何target blank 在其他浏览器中的行为 有什么
  • 如何添加带有外部链接的自定义选项卡按钮?

    使用 Mediawiki 1 19 并希望在选项卡按钮 页面 和 讨论 旁边添加带有外部链接的选项卡 怎么做 Extension DynamicTabs 不起作用 因为它在矢量皮肤方面存在问题 步入常见问题解答 如何在我的 wiki 中添加

随机推荐