这支笔http://codepen.io/Irish1/pen/lbjdw展示了我正在做的事情并展示了这个问题。
我有一个程序,其中添加了一个星期对象,然后我可以添加星期的名称和它的描述。然后我在一周中添加一天,但在添加这一天的过程中,它会清除先前输入的名称和描述。它只会在你第一次添加一天时发生,所以它与我在添加日方法的ELSE路径中所做的事情有关,这里是我的控制器功能
$scope.addDay = function(index) {
if (isDefined($scope.program.weeks[index].days)) {
$scope.program.weeks[index].days.push(
{
}
);
} else {
$scope.program.weeks[index] = {
days: [
{
}
]
};
}
};
如果您需要,可在上面链接的笔中详细说明完整的代码。
如何在不删除已放入周对象的任何内容的情况下追加第一天的对象?
答案 0 :(得分:2)
您正在为数组中的index
分配一个新对象。这就是所有属性被“删除”的原因
您可能只想定义“days”属性:
$scope.program.weeks[index].days = [ /* .. */ ]