Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 结构指令,其中可以获取属性值而不是计算布尔值_Angular - Fatal编程技术网

Angular 结构指令,其中可以获取属性值而不是计算布尔值

Angular 结构指令,其中可以获取属性值而不是计算布尔值,angular,Angular,我知道一个人能成功 我怎样才能得到一个原始字符串值呢 <p *my-unless="some space delimted values"> 最后,我制作了一个角色受限指令,其中允许的角色在属性值中声明,我在指令组件代码中执行检查,如 @Input() set forRoles(allowedRoles: string) { let userTypes = allowedRoles.split(' '); if(~userTypes.in

我知道一个人能成功

我怎样才能得到一个原始字符串值呢

<p *my-unless="some space delimted values">
最后,我制作了一个角色受限指令,其中允许的角色在属性值中声明,我在指令组件代码中执行检查,如

 @Input() 
    set forRoles(allowedRoles: string) {
        let userTypes = allowedRoles.split(' ');
        if(~userTypes.indexOf(this.authenticatorService.getUserType())){
          this.viewContainer.createEmbeddedView(this.templateRef);
        } else {
          this.viewContainer.clear();
        }
    }
也许这种事情的结构指令是错误的?我只是觉得我需要的包装器组件太多了。

怎么样

<p *my-unless="'some space delimted values'">

怎么样

<p *my-unless="'some space delimted values'">


使用绑定属性时,Angular需要一个变量

第一个没有绑定属性的示例,您可以直接使用字符串

<my-component someInput="some space delimted values"></my-component>

但如果使用绑定,则必须使用单引号

<my-component [someInput]="'some space delimted values'"></my-component>

结构指令行为与绑定属性相同,因此必须添加单引号:

<p *my-unless="'some space delimted values'">


使用绑定属性时,Angular需要一个变量

第一个没有绑定属性的示例,您可以直接使用字符串

<my-component someInput="some space delimted values"></my-component>

但如果使用绑定,则必须使用单引号

<my-component [someInput]="'some space delimted values'"></my-component>

结构指令行为与绑定属性相同,因此必须添加单引号:

<p *my-unless="'some space delimted values'">


你知道,我显然不明白这件事。所以,如果我错了,请嘲笑我,但我认为当你用
something.length>0
之类的表达式时,它只是求值并传递结果。但是现在,我很困惑,它看起来要么求值,要么只是传递变量,如果它是字符串的话?在我的解决方案中,你传递一个字符串“一些空间定义的值”,在你的解决方案中,你传递变量一些空间定义的值,这在Directive上下文中不存在谢谢,我现在明白了:-)你知道,我显然不明白这件事。所以,如果我错了,请嘲笑我,但我认为当你用
something.length>0
之类的表达式时,它只是求值并传递结果。但是现在,我很困惑,它看起来要么求值,要么只是传递变量,如果它是字符串的话?在我的解决方案中,你传递一个字符串“一些空间定义的值”,在你的解决方案中,你传递变量一些空间定义的值,这些值在DirectiveThank上下文中不存在。谢谢,我现在明白了:-)谢谢。我最初会同意你的第一个建议。非绑定属性。但是,如果我这样做,我就没有TemplateRef的提供者因为它在寻找绑定属性?我想,换句话说,我可以做一个不受约束的自定义指令吗?我不这么认为。结构指令像绑定属性一样处理。谢谢。我最初会同意你的第一个建议。非绑定属性。但是,如果我这样做,我就没有TemplateRef的提供者因为它在寻找绑定属性?我想,换句话说,我可以做一个不受约束的自定义指令吗?我不这么认为。结构指令的处理方式与绑定属性类似。