Vue: [Vue warn]: لم يتم تحديد "index" الخاصية أو الأسلوب في المثيل ولكن تتم الإشارة إليه أثناء العرض.

تم إنشاؤها على ٢٧ سبتمبر ٢٠١٦  ·  3تعليقات  ·  مصدر: vuejs/vue

إصدار Vue.js

2.0.0-rc.7

ما الذي يحدث بالفعل؟

أحاول تغيير مشروعي 1.x vue إلى 2.0.0 ، لكن تلقيت تحذيرًا

main.js: 20715 [Vue warn]: الخاصية أو الطريقة "index" لم يتم تعريفها في المثيل ولكن تمت الإشارة إليها أثناء العرض. تأكد من إعلان خصائص البيانات التفاعلية في خيار البيانات. (وجد في المكون)

الشفرة:

<template>
<div>
...
<a class="ui red label " v-for="(tag,index) in tags">
       {{tag}}
       <i class="delete icon" v-on:click="deleteTag(index)"></i>
 </a>
...
</div>
<template>
<script>

    module.exports = {
        data : function () {
            return {
                //form tags
                tags:[],
            }
        },
        methods : {

            deleteTag : function (deleteIndex) {
                this.tags.splice(deleteIndex,1);
            }
        }

    }

</script>

ماذا علي أن أفعل لإزالة هذا التحذير؟

need repro

التعليق الأكثر فائدة

أخيرًا وجدت المشكلة ، لقد نسيت تغيير الكود الأصلي إلى

(علامة تبويب ، فهرس)

في ملف آخر

تحذير:

<a class="item" v-for="tab in tabs" :class="{active : activeTab==index}" @click="toggleActiveTab(index)">
            {{tab.name}}
        </a>

لا تحذير:

<a class="item" v-for="(tab,index) in tabs" :class="{active : activeTab==index}" @click="toggleActiveTab(index)">
            {{tab.name}}
        </a>

ال 3 كومينتر

أخيرًا وجدت المشكلة ، لقد نسيت تغيير الكود الأصلي إلى

(علامة تبويب ، فهرس)

في ملف آخر

تحذير:

<a class="item" v-for="tab in tabs" :class="{active : activeTab==index}" @click="toggleActiveTab(index)">
            {{tab.name}}
        </a>

لا تحذير:

<a class="item" v-for="(tab,index) in tabs" :class="{active : activeTab==index}" @click="toggleActiveTab(index)">
            {{tab.name}}
        </a>

أولا ، سامحني على هذا المنشور ، لكنني مررت بموقف مشابه ..

إصدار Vue.js
2.1.6

إصدار Vuex.js
2.1.1

ملف Actions.js

 تصدير const addForm = ({إرسال}) => {
 إيفاد ("ADD_FORM")
 }

 تصدير const deleteForm = ({dispatch}) => {
 إرسال ("DELETE_FORM")
 }

ومكوني

 <نموذج>
 <ul class = "القائمة المنسدلة">
 <li>
 <a @ click = "addForm"> حفظ </ a> 
 </ li>
 <li>
 <a @ click = "deleteForm"> حذف </ a>
 </ li>
 </ ul>
 </ نموذج>

هذه هي النتيجة

vue.common.js؟ e881: 519 [Vue warn]: لم يتم تعريف الخاصية أو الطريقة "addForm" في المثيل ولكن تتم الإشارة إليها أثناء العرض. تأكد من إعلان خصائص البيانات التفاعلية في خيار البيانات.
vue.common.js؟ e881: 519 [Vue warn]: لم يتم تعريف الخاصية أو الطريقة "deleteForm" على المثيل ولكن يشار إليها أثناء العرض. تأكد من إعلان خصائص البيانات التفاعلية في خيار البيانات.

ماذا علي أن أفعل لتصحيح هذا التحذير؟

carvalhoviniciusluiz لا يجب أن تحدد actions على أحد المكونات ، يرجى الرجوع إلى: http://vuex.vuejs.org/en/actions.html#dispatching -actions-in-component

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

lmnsg picture lmnsg  ·  3تعليقات

bdedardel picture bdedardel  ·  3تعليقات

robertleeplummerjr picture robertleeplummerjr  ·  3تعليقات

finico picture finico  ·  3تعليقات

julianxhokaxhiu picture julianxhokaxhiu  ·  3تعليقات