在 $navigateBack 中传递更改后的 props

2023-11-29

我有一个概述页面,人们可以在其中看到结果。他们可以选择通过单击编辑按钮来更改该值。通过单击编辑按钮,您将导航到可以更改值的其他页面。如果您更改了该值,您将返回到概述页面。 但我的问题是我传递的道具this.$navigateBack()概览页面中未更改。

概览页面

<template>
<Page class="confirmPage" actionBarHidden="true">
    <StackLayout>
        <Button class="back fas btn btn-db" :text="'\uf060 Route Details' | unescape" @tap="$navigateBack"></Button>
        <GridLayout columns="2*, 2*, 1*" rows="*, *, *" class="routeDetails">
            <Label row="0" col="0" class="centerIt" text="Ziekenhuis"></Label>
            <Label row="0" col="1" :text="$props.hospital"></Label>
            <Label row="0" col="2" class="fas btn btn-t-d btn-cr-sm" :text="'\uf303' | unescape" @tap="onEditHospital"></Label>

            <Label row="1" col="0" class="centerIt" text="Startpunt"></Label>
            <Label row="1" col="1" :text="$props.startpoint"></Label>
            <Label row="1" col="2" class="fas btn btn-t-d btn-cr-sm" :text="'\uf303' | unescape" @tap="onEditStartpoint"></Label>

            <Label row="2" col="0" class="centerIt" text="Bestemming"></Label>
            <Label row="2" col="1" :text="$props.endpoint"></Label>
            <Label row="2" col="2" class="fas btn btn-t-d btn-cr-sm" :text="'\uf303' | unescape" @tap="onEditEndpoint"></Label>
        </GridLayout>
        <Button class="confirm btn btn-b-db btn-r btn-t-w" @tap="log" text="BEVESTIG"></Button>
    </StackLayout>
</Page>
</template>

概述页面的脚本

<script>
import editChooseHospital from "../Edit/EditChooseHospital/EditChooseHospital";
    import editChooseStartpoint from "../Edit/EditChooseStartpoint/EditChooseStartpoint";
    import editChooseEndpoint from "../Edit/EditChooseEndpoint/EditChooseEndpoint";


    export default {
        props: ['hospital', 'startpoint', 'endpoint'],
        methods: {
            log : function (args){
              console.log(this.endpoint,this.hospital,this.startpoint);
            },
            onEditHospital: function (args) {
                this.$navigateTo(editChooseHospital, {
                    props: {
                        startpoint: this.startpoint,
                        endpoint: this.endpoint
                    }
                })
            },
        }
    }
</script>

编辑页面

<template>
    <Page class="manualInputPage" actionBarHidden="true">
        <FlexBoxLayout class="layout">
            <Button class="back fas btn btn-lb" :text="'\uf060' | unescape" @tap="$navigateBack"></Button>
            <SearchBar class="searchbar" :text="searchValue" hint="Search" textFieldBackgroundColor="white" @textChange="onTextChanged" @submit="onSubmit"></SearchBar>
            <ListView class="list-group" for="items in hospitals" @itemTap="onItemTap" separatorColor="transparent">
                <v-template>
                    <Label class="item" :text="items.name"></Label>
                </v-template>
            </ListView>
            <Label class="bottom-info"></Label>
        </FlexBoxLayout>
    </Page>
</template>

编辑页面的脚本

<script>
    export default {
        props: ['startpoint', 'endpoint'],
        methods: {
            onItemTap: function (args) {
                console.log(this.hospitals[args.index].name);
                this.searchValue = this.hospitals[args.index].name;
            },
            onTextChanged: function (args) {

            },
            onSubmit: function (args) {
                console.log(this.searchValue, this.startpoint, this.endpoint);
                this.$navigateBack({
                    props: {
                        hospital: this.searchValue,
                        startpoint: this.startpoint,
                        endpoint: this.endpoint
                    }
                })
            }
        }
    }
</script>

不知道是否可以the docs about this.$navigateBack()我不太清楚你可以在函数中传递选项。但这些选择是什么?

Demo

感谢 Manoj 的解决方案


props后退导航不支持,该组件已存在。您还可以尝试其他选择,

  1. 传入一个对象props打电话时$navigatingTo。由于对象是通过引用传递的,因此当您在新组件中执行更改时,它应该更新实际源,例如example.
  2. 使用事件总线
  3. Vuex 也可以工作
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 $navigateBack 中传递更改后的 props 的相关文章

随机推荐

  • 使用命令将单词与 vim 中的指定列对齐

    如何将整个文件中的单词移动或移动到指定列 例如如下所示 前 123 ABC 112 XYZS 15925 asdf 1111 25asd 1 qwer After 123 ABC 112 XYZS 15925 asdf 1111 25asd
  • 在一组两种可能性中选择唯一的行

    问题本身很简单 但我无法找出在一个查询中完成此任务的解决方案 这是我对问题的 抽象 以便进行更简单的解释 我将保留我最初的解释 但这里有一组示例数据和我期望的结果 好的 这是一些示例数据 我用空行分隔对 Key Col Together t
  • JQuery 表单验证不适用于新创建的元素

    我在使用 Jquery 验证插件时遇到了一些问题 想知道是否有人可以提供帮助 目前 该插件适用于当前页面上的任何表单元素 addRelease validate submitHandler function form form submit
  • 如何在 XSD 中引用全局类型?

    如何实现对 simpleType 的 XSD 内部引用 我遇到了您在下图中看到的错误 XSD
  • Delphi中OnKeyDown的问题

    我正在与德尔福合作 我想跟踪按下了哪个键 我正在使用 TForm 的 KeyDown 事件 它工作正常 但问题是 如果我按小写字母 但它会给出该字母的大写字母 如何识别按下的按键是小写还是大写 如果您想跟踪字母数字键 那么您应该使用KeyP
  • 将 Facebook 登录应用程序与 Facebook 粉丝页面链接有什么优势?

    我正在创建一个电子商务网站 我将支持 FB 登录 我也会有一个FB粉丝专页 在支持 facebook 登录应用程序的同时 可以选择将 FB 页面附加到登录应用程序 App gt app name gt 应用程序详细信息 gt 联系信息 gt
  • iOS静默推送通知已取消

    在我的应用程序中 我使用静默推送通知来定期通信 但我遇到了麻烦 因为我在未启动应用程序时收到的静默推送通知未被处理 操作系统版本为iOS12 我正在使用 FCM 发送推送通知 有人有同样的问题吗 以下是您收到静默推送通知时的控制台日志 10
  • iOS 6 MPMoviePlayerViewController 和 PresentMoviePlayerViewControllerAnimated Rotation

    在以前的 iOS 版本中 我们的视频会自动旋转 但在 iOS 6 中不再是这种情况 我知道 PresentMoviePlayerViewControllerAnimated 以前是设计用于执行此操作的 但是我如何告诉 MPMoviePlay
  • Android:如何检测双 SD 卡[重复]

    这个问题在这里已经有答案了 有什么方法可以识别设备中是否有两张 SD 卡 Edit 我发现目前无法区分内部存储和真正的外部SD卡 在某些设备 例如 Samsung Galaxy Tab 7 英寸 中 系统将内部存储 通常为 16GB 视为外
  • Android:MediaPlayer AUDIOFOCUS_LOSS 和 setOnErrorListener() 问题

    我正在创建一个音乐播放器应用程序 我正在检查我的应用程序是否丢失 AudioFocus 然后播放将停止 但这提出了一个问题 当我播放一首曲目时 然后停止它 然后再次播放一首曲目 switch case AudioManager AUDIOF
  • String.equals() 是如何工作的

    我一直在尝试了解一些 API 方法是如何工作的 下面是 java lang String 类的 equals 方法的片段 有人可以告诉我代码实际上是如何比较两个字符串的吗 我明白了计数的重要性 但是偏移量意味着什么 这些变量如何获取值 就像
  • 从 Wikipedia API 获取名人

    我正在尝试从 Wikipedia API 中获取还活着的人 但我还不知道该怎么做 I found 这个问题这和我的一样 据我所知 唯一的方法是搜索只有birth date参数的人 我实际上该怎么做 例如 如果我想搜索 罗纳尔多 我应该得到所
  • Ionic V5 在 Safari 上出现 Angular 组件问题

    我遇到了 Ionic PWA 应用程序在 Safari 上针对以下 UI 组件的点击问题 离子无线电 离子选择 离子菜单 当您单击单选按钮组件 https ionicframework com docs api radio 1 时 您可以看
  • Oracle 中不带 FROM 子句的选择

    in SQL服务器可以在不引用表的情况下执行 SELECT 就像是 Select 1 2 3 my dummy string As Oracle不允许没有 FROM 的 SELECT 我使用双表进行此类操作 就像是 Select 1 2 3
  • RadioGroup 允许选择多个RadioButton

    我有一个在 XML 中定义的 RadioGroup 它有两个 RadioButton 但是 我需要将标签显示在按钮本身的左侧 标签左对齐 按钮右对齐 为此 我使用了包含 TextView 和 RadioButton 的relativelay
  • 绝对位置元素在静态父级中的行为究竟如何

    我问这个问题是因为昨天我必须设置几个 div 的样式 如下所示thisJSFiddle 示例 对我来说最棘手的部分是定位 div 就从 div 但保持它们顶部对齐 我也想要边界 div 走出它的父div 因此 经过一些研究 我是 CSS 初
  • 如何格式化要使用 arrayWithContentsOfFile 读取的文本文件

    我有几个大的单词列表 我已经将它们加载到代码中 如下所示 NSArray dict3 NSArray alloc initWithObjects abled about above absurd absurdity 但现在它实际上奇怪地导致
  • Actionscript3 阿尔法掩蔽?

    我试图在谷歌地图应用程序上应用聚光灯效果 具体来说 我画了一个跟随鼠标的圆圈 并将其设置为地图上的遮罩 问题是只有圆圈内的地图区域显示出来 我知道这就是蒙版应该看起来的样子 但是有没有办法使圆圈外的区域成为某种半透明 以便其下方的地图也可以
  • 如何在不使用“DisplayNameAttribute”的情况下更改 ViewModel 显示名称?

    我想直接更改 ViewModel 的 某些属性的显示名称 而不使用 DisplayName prop name 这应该发生直接在控制器内部在返回视图之前 或者在 ViewModel 类本身内部 我不想更改视图中的任何内容 也不想使用任何数据
  • 在 $navigateBack 中传递更改后的 props

    我有一个概述页面 人们可以在其中看到结果 他们可以选择通过单击编辑按钮来更改该值 通过单击编辑按钮 您将导航到可以更改值的其他页面 如果您更改了该值 您将返回到概述页面 但我的问题是我传递的道具this navigateBack 概览页面中