【问题标题】:nativescript passing props vuenativescript 传递道具 vue
【发布时间】:2019-04-10 22:21:37
【问题描述】:

在 nativescript this.$navigateTo() 中传递 prop 时遇到问题

 <template>
       <stack-layout v-for="meme in memes">
        <Image :src="meme.url" @tap="goToEditPage(meme.url)"/>
       </stack-layout>
      </template>

<script>
import EditMeme from './EditMeme'
  export default {
    computed: {
      memes(){
        return this.$store.getters.memes
      }
    },
    components: {
      EditMeme
    },
    methods: {
      goToEditPage(ImageUrl) {
        this.$navigateTo(EditMeme, { context: { propsData: { Image: ImageUrl } }});
      }
    }
  }

</script>

我尝试传递道具this way

仍然,在子组件中我得到一个 undefined , 这是子组件:

  export default {
props: ['Image'],
methods: {
  onButtonTap() {

    console.log(this.props);
  }
  }}

有什么想法吗?我是 vue.js 的新手,所以很有可能我的代码中缺少一些基本的东西

【问题讨论】:

    标签: javascript vue.js nativescript


    【解决方案1】:

    正确的导航方式是这样的:

    this.$navigateTo(confirmRoute, {
                        props: {
                            hospital: "hospital A",
                            startpoint: "startpoint Y",
                            endpoint: "point x"
                        }
                    })
    

    你只需要这样捕捉它然后或者你下一页:

     props: ['hospital', 'startpoint', 'endpoint'],
    

    然后你可以在 JS 中像这样使用它:

    this.hospital
    this.startpoint
    this.endpoint
    

    如果你想在模板中使用它,你需要这样做:

    <template>
        <Page>
                <Label  :text="$props.hospital.name">
                </Label>
            </FlexBoxLayout>
        </Page>
    </template>
    

    【讨论】:

      【解决方案2】:

      如果使用原生脚本 vue:

      @tap="$navigator.navigate('/settings/your_page', {props: { isEditMode: true }})"

      在 your_page.vue 中:

      props: { isEditMode: { type: Boolean, default: false, required: false } },

      mounted() { console.log("isEditMode :&gt;&gt; ", this.isEditMode); }

      【讨论】:

        猜你喜欢
        • 2021-06-06
        • 2018-05-29
        • 2021-06-18
        • 1970-01-01
        • 2020-10-19
        • 2020-08-28
        • 2020-04-04
        • 2020-03-22
        • 2020-05-04
        相关资源
        最近更新 更多