使用textarea编辑对象数组

时间:2017-07-11 12:17:21

标签: javascript angularjs

我正在使用AngularJS(1.5)

编写应用程序

我正在尝试编写一个组件,通过HTML-Textarea一次创建/编辑多个对象。 我认为这可能在不同情况下有用。

在我的应用程序中,我有这样的数组。

var someObjects = [
    {
        id: 1,
        name: 'name1'
    },
    {
        id: 2,
        name: 'name2'
    },
    {
        id: 3,
        name: 'name3'
    }
];

我喜欢将它填入像这样的文本区域

<textarea>
    name1\n
    name2\n
    name3
</textarea>

textarea中的编辑应该出现在数组中。 textarea中的新行应该创建一个没有id的对象

    {
        name: 'name4'
    }

ID由后端的数据库创建。 在我的情况下,应用程序使用来自rest-api的数据。

使用textarea而不是input-element的原因是,您可以通过向区域添加新行来轻松添加许多新对象。 对于使用输入元素,您必须编写代码以添加新输入,并且用户必须将光标移动到这些

问题

我知道如何在ngList - 指令的帮助下用值填充textarea,并在每个对象上附加一个toString函数,返回名称。 但它不起作用。

在编辑值时,对象数组将被简单的字符串数组替换。 这样我就失去了像id这样的额外信息。

有没有办法解决这个问题? 有人有想法吗?

P.S。:这是一个快速入侵的插图来说明https://plnkr.co/edit/sbANzvcsNW5oMJPTI813

0 个答案:

没有答案