当与Angular Universal一起使用ngx-meta
和ngx-translate
包时遇到问题。RouterModule
initialNavigation
'enabled'
然后,在渲染页面时,而不是元标记,只显示来自语言包的替换值:'HOME.TITLE'
等'HOME.DESC'
。
在下一个过渡时,当它打开时spa
,会拾取元数据,但不再扮演重要角色。如果您删除initialNavigation
,那么在渲染页面时,一切都会被很好地拾取,但会开始闪烁。
当与Angular Universal一起使用ngx-meta
和ngx-translate
包时遇到问题。RouterModule
initialNavigation
'enabled'
然后,在渲染页面时,而不是元标记,只显示来自语言包的替换值:'HOME.TITLE'
等'HOME.DESC'
。
在下一个过渡时,当它打开时spa
,会拾取元数据,但不再扮演重要角色。如果您删除initialNavigation
,那么在渲染页面时,一切都会被很好地拾取,但会开始闪烁。
再会,
做了一个依赖于角色的部分。现在我正在为该部分的不同部分做角色(例如,隐藏一个按钮,或者一个列表,或者......)
为此,在模板中,只需编写以下内容:
<p [hasRole]="['admin', 'user']">Тестовый параграф которые видят только Админ и Пользователь</p>
<div [hasRole]="['admin']">Тестовый блок который видит только Админ</div>
该指令本身如下所示:
import { Directive, OnInit, ViewContainerRef } from '@angular/core';
import { Input } from "@angular/core/src/metadata/directives";
@Directive({
selector: '[hasRole]'
})
export class HasRoleDirective implements OnInit {
@Input() hasRole: Array<string>;
private viewContainerRef: ViewContainerRef;
constructor(viewContainerRef: ViewContainerRef) {
this.viewContainerRef = viewContainerRef;
}
ngOnInit() {
this.checkRoles('user');
}
checkRoles(userRole: string) {
console.log("Роль пользователя: " + userRole);
if (!this.hasRole || this.hasRole.indexOf(userRole) != -1) {
console.log("Есть доступ");
} else {
this.viewContainerRef.clear();
console.log("Доступ запрещен");
}
}
}
用户的查看权限定义完善。但他不想删除它。谁可以推动决定?
再会,
我正在重写一个项目,从角度(路由在后端)到角度 2 在后端是 django。我通过写入 cookie 来编写路由和身份验证(为此我使用了 angular2-cookie 包)。之前,为了从容写代码,正好拿起csrftoken,用了一种小拐杖:
let token = document.cookie.replace(/(?:(?:^|.*;\s*)csrftoken\s*\=\s*([^;]*).*$)|^.*$/, "$1");
但是现在这个选项不起作用,我不能完全理解如何正确地使用 csrftoken django - angular2。
如果有人可以帮助我解决这种情况,我将不胜感激。谢谢