所以我正在为用户添加备注区域。用户将能够输入他们想要的任何内容并点击保存。保存适用于整个页面,但重置的输入区域除外。我唯一能想到的是ui-tinymce
或localStorage
??关于如何保存和存储输入区div的任何输入?此外,它应该在同一页面上完成,因为它与特定订单有关。每个订单的输入区域都有不同的注释。
HTML
<div ng-if="'confirmation' != page && editable" class="col-xs-12 col-md-6">
<div class="panel panel-default">
<div class="panel-heading">
<h3>Notes</h3>
</div>
<div class="panel-body">
<div align="center">
<input placeholder="Notes" ng-model="myNotes.notes" class="notes">
</div>
</div>
</div>
</div>
JS
$scope.myNotes = {};
更新:让我为此问题添加更多内容。所以我得到了它的工作,有点,我能够通过电话后成功保存我的'ui-tiny-mce'。我将在工作页面下方发布,该页面将保存来自'ui-tiny-mce'的文本。现在的问题是,它保存了文本。但是每个订单都有一个'ui-tiny-mce'框,当我保存一个时,它会将相同的数据保存到所有订单页面中的所有'ui-tiny-mce'框中。
HTML
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Notes <button ng-click="saveNotes()">Save Notes</button></h3>
</div>
<div class="panel-body">
<div class="form-group">
<textarea ui-tinymce="tinymceOptions2" ng-model="myNotes.notes"></textarea>
</div>
</div>
</div>
JS控制器
$scope.myNotes = {};
$scope.saveNotes = function () {
$http.post('api/settingsController.php/write',$scope.settings).success(function () {
toastr.success('Notes Saved');
});
};
PHP
$app->post('/write', function(\Symfony\Component\HttpFoundation\Request $request) use ($app) {
$document = json_decode($request->getContent(), true);
unset($document['_id']);
$document['sid'] = $_SESSION['sid'];
$app['mongoOrders']->update(['sid'=>$_SESSION['sid']], $document, ['upsert'=>true]);
return $app->json($document);});
答案 0 :(得分:0)
有一个Angular模块,ngStorage使得使用本地存储变得更简单 - 基本上你可以将数据绑定到localstorage元素。
答案 1 :(得分:0)
UI Tinymce是一个用于在浏览器中编辑文本的框架,而本地存储是临时数据存储的解决方案......它们不具有可比性。您可以使用UI Tinymce进行编辑,然后使用本地存储来保存UI Tinymce中的数据,这可能有效。虽然您应该预先警告使用本地存储(或任何客户端存储解决方案)仅在使用清除其浏览器缓存/ cookie /存储之前有效。如果您计划制作Web应用程序,则更好的解决方案是将数据存储在服务器上的索引数据库中,而不是为您的应用程序提供服务。这样,用户就不会意外删除他们的数据。你甚至可以使用UI Tinymce。
答案 2 :(得分:-1)
因此,如果您想在刷新页面后保留数据,则可以选择几个选项。
选项1(好):
保存当前记事,并通过路径访问它。您需要确保已将 ngRoute 添加到您应用的模块中:
angular.module('app', ['ngRoute']);
并且您已将 ngRoute 添加到您的脚本中:
<script src="path/to/angular-route.js"></script> // must be loaded in after angular.js
https://docs.angularjs.org/api/ngRoute
,然后将路由添加到您的配置: https://docs.angularjs.org/api/ngRoute/provider/ $ routeProvider
选项2(好的):
将注释保存为 window.localStorage 对象添加的字符串化JSON。 https://developer.mozilla.org/en-US/docs/Web/API/Window/localStorage
此选项存在的问题是,它更容易出现陈旧数据。
选项3(不太好):
直接将注释附加到窗口对象。