1
権限が正しい場合は、表示するdivがあります。 * ngIfステートメントはブール値を返すメソッドでサービスを呼び出しています。ブール値がtrueの場合、divが表示されます。なぜ私のAngular2 * ngは、この関数ではブール値を返すのですか?
ここでdivのためのコードです:
import {Injectable} from 'angular2/core';
@Injectable()
export class ShowMeService {
showme(permission: integer) {
let bool = false;
if (permission === 5) {
bool = true;
return bool;
}
}
}
しかし、どんなにそれが常に表示されないものを、それがある場合でも:
import { ShowMeService } from '../services/showme.service';
let styles = require('./admin.css');
@Component({
selector: 'admin',
directives: [ProtectedDirective],
template: `
<div style="margin-top: 40px" protected>
<div class="home centered">
<div class="logout"><a class="btn btn-primary btn-sm"
role= "button"(click) = "logout()" > Logout </a></div>
<a href = "/home"><< Launchpad</a>
<h2>User Admin</h2 >
A permissioned div appears below if the user has permission to view:
<hr>
<div *ngIf="checkPermissions(5)">
<p>
This is an example of a page that would only be visible to roles with proper permissions.
</p>
<p>
The link to this page is not visible to certain roles.
</p>
</div>
</div>
</div>
`,
styles: [styles],
providers: [ShowMeService]
})
export class Admin {
constructor(private _showMeService: ShowMeService) {}
checkPermissions(permission: integer) {
this._showMeService.showme(permission);
}
}
そして、ここでは、と呼ばれるブール値を返すサービスです明らかに真実を返す。
のおかげだと思います!それはまさに正しいことです。 –
これがあなたの質問に答えた場合は、それを受け入れて質問に答えてください(アップ/ダウンボタンの下にあるチェックマークを使用) –