javascript - Vue 3 (composition API) get array length - Stack Overflow

I'm learning javascript and vue.js 3 position API.My question is I simply want to get an array le

I'm learning javascript and vue.js 3 position API. My question is I simply want to get an array length and render at

. The array name : "getForms"

<script>.....
const forms_length = puted(() =>  getForms.value.length)

<template>....
<p> {{form_length}} </p>

I get an error "Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'length')"

why? and what I should do?

Thank you for your help!

I'm learning javascript and vue.js 3 position API. My question is I simply want to get an array length and render at

. The array name : "getForms"

<script>.....
const forms_length = puted(() =>  getForms.value.length)

<template>....
<p> {{form_length}} </p>

I get an error "Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'length')"

why? and what I should do?

Thank you for your help!

Share Improve this question asked May 19, 2022 at 17:54 be ablebe able 812 silver badges10 bronze badges 4
  • could you show us where getForms is – Ilijanovic Commented May 19, 2022 at 17:57
  • Thank you Ifaruki! It's ing from pinia, import {useFormsStore} from '../store/forms' and const getForms = puted(() => { return store.forms}) if I create an array like const getForm = puted(() => [ {id: 1, name: "aaa" }, { id: 2, name: "bbb"}, { id: 1, name: "ccc" }, {id: 1, name: "ddd" }, ]) it works.... – be able Commented May 19, 2022 at 18:38
  • The question should contain all the relevant code. You're still missing the line that defines store. Even if it's correct, it's specific to what store.forms is. The error means that store.forms is possibly undefined, or it could refer to another array. The error mentions a promise, but there's no promise in the code. Please, provide stackoverflow./help/mcve that can reproduce the problem. – Estus Flask Commented May 19, 2022 at 18:42
  • Sorry Estus Flask, This is first time I've posted, actually created my account. I'll be careful next time. Thanks – be able Commented May 19, 2022 at 20:46
Add a ment  | 

1 Answer 1

Reset to default 3

You should use the puted property this way

<template>
  <p>Array length: {{ formsLength}}</p>
</template>
<script>
  import { puted } from 'vue'
  import {useFormsStore} from '../store/forms'
  setup() {
    const { store } = useFormsStore()
    // if the store.forms array is undefined or not ready,
    // then it returns an empty array
    const getForms = puted(() => { return store.forms || []})
    const formsLength = puted(() => getForms.value.length)

    return {
      formsLength
    }
  }
</script>

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745656853a4638592.html

相关推荐

  • javascript - Vue 3 (composition API) get array length - Stack Overflow

    I'm learning javascript and vue.js 3 position API.My question is I simply want to get an array le

    4小时前
    10

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信