【发布时间】:2015-03-25 20:26:50
【问题描述】:
我有这两个功能
功能 1
$scope.selected = [];
$scope.selected.project = ['name:test, id:1'];
$scope.selectedFs = function($item, $model) {
$scope.selected.project = [$model];
console.log($scope.selected.project[0]);
}
};
功能2
$scope.create = function() {
var sign = new Sign ({
sig: document.getElementById('canvas').toDataURL(),
projectId: $scope.proid,
project: $scope.selected.project[0],
timesheetId: $scope.timesheetsId
});
console.log($scope.selected.project[0]);
sign.$save(function(response) {
}, function(errorResponse) {
$scope.error = errorResponse.data.message;
});
};
}
]);
当我调用函数 1 时,我可以在控制台中看到 selected.project 的变化,但是当我之后使用函数 2 时,它只使用 ['name:test, id:1']
测试
selectedFs('1','1') ->
CONSOLE = [1] ->
create() ->
CONSOLE = ['name:test, id:1']
为什么函数 2 没有新值?
【问题讨论】:
-
您的 $scope.selected.project 未定义。你在哪里设置的?
-
@Tom console.log($scope.selected.project) 给出 undefind 和 console.log($scope.selected.project) 给出相同的 typeError
-
对不起,我已经编辑了我的评论!见上文。
-
@Tom 刚刚编辑了我的问题
标签: javascript angularjs function angularjs-scope mean