angularjs - 无法在 Angular JS 中设置未定义的属性“$scope 变量”
问题描述
尝试将一个变量复制到另一个变量时遇到错误
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope, $http) {
$scope.myWelcome = "Welcome"
var vm = this,
parent = $scope.summary,
results = $scope.results,
matches = {
"value":"John"
};
parent.def = angular.copy(matches);
$scope.myWelcome = parent.def;
});
//遇到这个错误,请高人指点:
TypeError: Cannot set property 'def' of undefined
at Object.<anonymous> (<anonymous>:11:14)
at Object.invoke (angular.js:5106)
at O.instance (angular.js:11076)
at p (angular.js:9939)
at f (angular.js:9248)
at angular.js:9113
at angular.js:1960
at m.$eval (angular.js:18542)
解决方案
在这一行中:parent.def = angular.copy(matches);
,parent
等于$scope.summary
。
所以你正在尝试做相当于$scope.summary.def = angular.copy(matches)
. 由于$scope.summary
未定义,因此引发错误。
您可以通过将$scope.summary
first 定义为空对象来修复它:$scope.summary = {}
.
推荐阅读
- h2 - Derby 的 H2 INIT 等效项
- r - 基于条件的滞后数据(非固定滞后)
- bash - 如何在两种模式之间读取文件Shell
- c++11 - std::map 的 std::_Rb_tree 副本导致递归导致 SEGSEV 具有 4000+ 深的核心转储调用堆栈
- powershell - Powershell - 拆分/组织属性的方法?
- docker - 为什么我的 Play Framework for Scala 应用程序的 Docker 映像没有以 AccessDeniedException 开头?
- node.js - 如何在nodejs中动态调用节点调度程序
- google-apps-script - 有没有办法让这个功能在触发时不会超时?
- emacs - 元密钥在 Emacs 中无法使用邪恶模式(即使在 Gui 版本中)(MAC)
- python - SHA256 在 Python Vs TypeScript 中散列正文和 base64 编码