プロジェクトとして、私はAngularを使用して小規模なアプリケーションを作成するように求められました。 localstorageのために私はサービスとして別のjsを使いたいと思う。ローカルストレージ用の角度サービス
私がしようとしているのは、コントローラページを使用して、htmlページにサービスを使用してlocalstorageを呼び出す機能を与えることです。この理由は、複数のhtmlページからlocalstorageにアクセスしたいからです。
下記のコードを投稿しており、大変助かりました。
profilecontroller:
app.controller("ProfileController", function($scope, DataService) {
$scope.profile = DataService.getProfile();
});
profilehtml:
<html>
<head>
<link rel="stylesheet" href="CSS/stylesheet.css">
</head>
<body>
<div class="page">
<h1> Overflow test for longer pages </h1> <br>
<div id = "textholder" ng-repeat="data in profile">
<span>{{data.id}}</span>
</div>
</div>
</body>
サービス:
app.service("DataService", function(){
console.log("DataService");
var localProfile = JSON.parse(localStorage.getItem("profile"));
if(localProfile != undefined && localProfile.length>0)
{ this.profiles = localProfile; }
else {
this.profile = [
{ id: "1526", username: "berserk", password: "berserk", age: "31", sex: "male"},
{ id: "1358", username: "Johnathan", password: "test", age: "17", sex: "male"},
{ id: "2539", username: "Britney", password: "test", age: "18", sex: "female"},
{ id: "1486", username: "Kevin", password: "test", age: "7", sex: "male"},
{ id: "7777", username: "jesus", password: "holy", age: "unknown", sex: "male"},
{ id: "6666", username: "satan", password: "hell", age: "unknown", sex: "unknown"}
];
}
this.getProfile = function() {
return this.profile;
}
});
あなたが示唆したように、私は確かに私が以前に遭遇した問題の一部を解決するよう、コードを変更します。上記のコードを参照してください(エラーは表示されません)。 しかし、今でもh1テキストだけを表示し、私が呼び出しようとしているデータではないページの問題が発生します。どのようなアイデアを解決することができますか? –
なぜあなたはどうしようとしていますか? getUser:データ?あなたのHTMLにいくつかの問題があります。何を表示する必要があるのかわかりません。 – Sajeetharan
これはもう少し前に作ったフィルタです。それは自己製フィルターで作業するための要件の1つでしたので、作成しました。これは以前は機能していましたが、それはデータベースをコントローラーに入れるときでした。 私がしようとしていることの基礎は、どのような方法でもデータを表示することです。今のところ私がそれを表示する方法は、私がそれを見ることができる限り興味深いものではありません。 –