【发布时间】:2018-08-04 11:16:39
【问题描述】:
我偶尔会注意到 Umbraco 初始化我的数据类型 $scope.model.value 值的数据中有奇怪的行为。
我正在使用 Umbraco 7.11.1,我的自定义数据类型是围绕基于 JSON 的复杂数据模型构建的。
在“保存和发布”期间(来自 Umbraco 后台),Umbraco 似乎接受了我的控制器存储在 $scope.model.value 中的 JSON - 不显示错误对话框,记录控制台错误等。
然而,当后台重新加载时,Umbraco 会尝试使用部分格式错误的 JSON 字符串来初始化我的数据类型,而不是预期的 JSON 对象(即之前保存的)。
我遵循通过 angularjs 控制器实现自定义数据类型的常规模式:
angular.module('umbraco')
.controller('MyDataType', ['$scope', function ($scope) {
var loadedData = $scope.model.value;
// Do stuff with "loadedData"
$scope.model.value = loadedData;
}])
当我的 JSON 模型中有大量数据(即序列化为 ~150 个字符或更多的 json)时,似乎会出现此问题
我可以存储在 Umbraco 数据类型中的数据量是否有限制?还是我在这里忽略了其他东西?
【问题讨论】:
-
AngularJS 进入范围变量(“$$hashKey”等)。如果你使用 angular.toJson(obj) 而不是 JSON.stringify(obj) 那么 Angular 会为你去掉这些内部使用的值。
标签: javascript angularjs json umbraco7