@Directive({ selector: '[hasAuth]' })
export class HasAuthDirective implements OnInit {
constructor(private _viewContainer: ViewContainerRef, private _template: TemplateRef<any>) { }
ngOnInit(): void {
this._checkAuth(/*ваше определение аутентификации типа boolean*/);
}
private _checkAuth(isAuth: boolean): void {
if (isAuth) {
this._viewContainer.createEmbeddedView(this._template);
} else {
this._viewContainer.clear();
}
}
}
<button *hasAuth>Редактировать статью</button>
<div
*ngFor="let user of users"
[class]="active === user ? 'active' : ''"
(click)="active = user"
>
class Plugin {
constructor (rawUrl, rawName) {
this.url = new UrlParser(rawUrl);
this.name = new NameParser(rawName);
}
doSomething () {
// code
}
}
function userCode() {
new Plugin("example.com", "FooBar").doSomething()
}
class Plugin {
constructor (urlParser, nameParser) {
this.url = urlParser;
this.name = nameParser;
}
doSomething () {
// code
}
}
Plugin.init = function (url, name) {
return new Plugin(
new UrlParser(url),
new NameParser(name)
);
}
function userCode() {
Plugin.init("example.com", "FooBar").doSomething()
}
class UrlParser {
constructor (urlString) {
var result = this.matchUrlStrign(urlString)
this.anchor = result[0];
this.path = result[1];
// etc
}
}
this.url.anchor
MyService x = GetSevice<MyService>();
или Person x = GetSevice<Person>();
или IWeapon x = GetSevice<IWeapon>();
.throw new NotImplementedException();
- возникнет исключение, указывающее, что тело не определено. Так делается, если нужно показать, что этот код вызывать не нужно, либо если тело будет написано позже, а сейчас при вызове будет исключение. from myRow in dt.AsEnumerable()
where myRow["Цена"] != DBNull.Value
orderby double.Parse(myRow["Цена"])
select myRow;
// http://php.net/manual/en/function.file-exists.php#75064
$file = 'http://www.domain.com/somefile.jpg';
$file_headers = @get_headers($file);
if($file_headers[0] == 'HTTP/1.1 404 Not Found') {
$exists = false;
}
else {
$exists = true;
}