LocalForage + Angular - 如何在更改时自动保存整个表单对象
LocalForage + Angular - how to automatically save entire form object on change
我有一个名为 productForm
的范围变量,我想在它的基础模型发生变化时保存它(即 productForm.designer
)
我希望键是与表单关联的产品的 ID,而不是基于每个输入。我试过这样做,但没有成功:
intakeApp.controller("MageProductCtrl", ["$scope", "$http", "$localForage", function($scope, $http, $localForage) {
$localForage.bind($scope, 'someProductId');
...
}]);
我的视图看起来像这样
<form name="productForm" ng-submit="submit(productForm.$valid)" novalidate>
<input type="text" class="primary-text" name="designer" ng-model="product.designer" value="{{product.designer}}" required>
...
</form>
当我将 local-forage
绑定添加到我的输入时,它会使用 product.designer
键保存特定输入但是,我宁愿整个表单都这样保存:
key: someProductId, value: {product.designer: "foo", product.name: "bar"}
知道我做错了什么吗?
我遇到了同样的问题,看了一下绑定方法https://github.com/ocombe/angular-localForage/blob/master/dist/angular-localForage.js#L379
您可以看到,它仅在对象已存在于数据库中或您提供默认值时才会绑定。我这样解决了这个问题:
$localForage.bind($scope, { key: 'user', defaultValue: {}})
我有一个名为 productForm
的范围变量,我想在它的基础模型发生变化时保存它(即 productForm.designer
)
我希望键是与表单关联的产品的 ID,而不是基于每个输入。我试过这样做,但没有成功:
intakeApp.controller("MageProductCtrl", ["$scope", "$http", "$localForage", function($scope, $http, $localForage) {
$localForage.bind($scope, 'someProductId');
...
}]);
我的视图看起来像这样
<form name="productForm" ng-submit="submit(productForm.$valid)" novalidate>
<input type="text" class="primary-text" name="designer" ng-model="product.designer" value="{{product.designer}}" required>
...
</form>
当我将 local-forage
绑定添加到我的输入时,它会使用 product.designer
键保存特定输入但是,我宁愿整个表单都这样保存:
key: someProductId, value: {product.designer: "foo", product.name: "bar"}
知道我做错了什么吗?
我遇到了同样的问题,看了一下绑定方法https://github.com/ocombe/angular-localForage/blob/master/dist/angular-localForage.js#L379
您可以看到,它仅在对象已存在于数据库中或您提供默认值时才会绑定。我这样解决了这个问题:
$localForage.bind($scope, { key: 'user', defaultValue: {}})