查找嵌套数组以在Vue中存储新数据

时间:2018-01-27 22:16:46

标签: vue.js vuex

我是Vue和Vuex的新手,我正在尝试创建一个简单的待办事项应用程序,用户应该能够创建具有自己的待办事项集合的项目。然后将每个项目的待办事项分类为初始 WIP 已完成。可以通过路径projects/:id查看项目,其中id是项目的ID。我在每个项目的Vuex商店中的结构如下:

{
    title: "Lorem ipsum",
    description: "Lorem ipsum",
    id: "99149129492149214",
    todos: {
        initial: [
        {
            description: "Lorem ipsum dolor sit amet.",
            createdBy: "Tobias",
            id: "99149129492149215",
        }
        ],
        wip: [
        {
            description: "Lorem ipsum dolor sit amet.",
            createdBy: "Tobias",
            id: "99149129492149216",
        }
        ],
        finished: []
    }
}

我想创建此功能,让用户通过单击按钮在项目中创建新的待办事项。然后应该将项目添加到todos.initial数组中,并使用与每个待办事项相同的对象结构。

我知道如何创建一个新项目。然后,我将在Projects.vue中创建一个方法,使用Vuex中的操作和变异,使用新项目的数据推送存储中的projects数组的状态。为此,除了将数据推送到的数组之外,我不必指定任何其他内容。

然而,我需要帮助理解的是如何告诉Vuex在我单击“添加待办事项”按钮的项目中推送一个数组。例如,如果用户正在使用路径projects/99149129492149214查看项目并且用户单击“添加待办事项”按钮,则我希望将新待办事项推送到该特定项目的todos.initial数组。

这方面的最佳做法是什么?我想我可能不得不将当前查看的项目的ID传递给变异方法,但我不知道这是如何做的。

1 个答案:

答案 0 :(得分:0)

我还在学习Vuex,所以希望我的回答能够帮到你。

如果您的路线为import pymatlab session = pymatlab.session_factory(options = 'nodesktop -nodisplay'),则可以在“添加待办事项”方法中轻松获取Starting program: /home/jsingla/anaconda2/bin/python test.py [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Program received signal SIGSEGV, Segmentation fault. 0x00007ffff17f8029 in engOutputBuffer () from /usr/local/MATLAB/R2017b/bin/glnxa64/libeng.so 的ID。然后你可以将id传递给你的变异,并按id搜索项目。

你的方法:

projects/:id

在你的突变中:

this.$route.params.id