【发布时间】:2016-12-01 01:19:46
【问题描述】:
我正在尝试使用可以由 cookie 自动检索的简单输入。
我的角度控制器是:
<script>
var app = angular.module('mantis', ['ngCookies']);
app.controller('main', function($scope, $cookies) {
$scope.nom = '';
$scope.WriteNom = function () {
$cookies.put('Nom', $scope.nom);
};
$scope.ReadNom = function () {
$scope.nom = $cookies.get('Nom');
return $scope.nom;
};
});
</script>
在我的页面中,我创建了一个 div,我可以在其中完美地更改变量“nom”。 该值应使用 ng-init 加载(来自 cookie) 它随着 ng-model 的变化而变化 它应该用 ng-click 保存
<div class="container" ng-app="mantis" ng-controller="main">
<!-- Assigné à -->
<div class="col-lg-12">
<div class="input-group" ng-init="nom=ReadNom()">
<span class="input-group-addon"><i class="glyphicon glyphicon-user"></i></span>
<input id="nom" type="text" class="form-control" name="nom" placeholder="Assigné à (id)" ng-model="nom">
<span class="input-group-btn">
<button class="btn btn-secondary" type="button" ng-click="WriteNom()">Sauvegarder</button>
</span>
</div>
</div>
(...)
然后,在其他地方,我可以通过使用 {{nom}}
在需要的地方使用“nom”它几乎可以工作了:
- 在输入框中输入时值正确更改,我可以使用它
- 当我点击按钮时cookie没有改变,当我加载页面时它也没有加载
【问题讨论】:
-
你的控制器是分开的还是在同一个文件上?
-
它在同一个文件中。最后我在其他地方犯了一个错误。现在,看起来只有 Cookie 没有被保存。错误不是来自这里(我正在编辑我的问题)
-
我改变了我的问题。没有错误,但也没有 cookie :)
-
什么是角度版本?
-
angular 和 angular-cookies 都是 1.4.8