使用@HostBinding
将属性绑定到我的组件的背景图像时,在指定图片网址时它不起作用。
使用Angular2 RC-1的第一个示例:
use CGI qw(:cgi);
print header(-type => 'text/html', -status => '401 Not Authorized',
'WWW-Authenticate' => 'Basic realm="Videos"');
在检查DOM时,我们可以找到import {Component, HostBinding} from "@angular/core";
@Component({
selector: 'demo',
template: 'something'
})
export class DemoComponent {
@HostBinding('style.background-image')
backgroundImage = 'url(http://placekitten.com/g/200/300)';
}
- >不好
第二个例子:
<demo>something</demo>
这一次,在检查DOM时,我们可以找到import {Component, HostBinding} from "@angular/core";
@Component({
selector: 'demo',
template: 'something'
})
export class DemoComponent {
@HostBinding('style.background-image')
backgroundImage = 'none';
}
- &gt; GOOD
我尝试使用<demo style="background-image: none;">something</demo>
而不是background
,它使用的颜色类似于background-image
,但仍然无法使用网址。
我还尝试稍后使用"blue"
内的setTimeout
动态更改值,当从ngAfterViewInit()
更改为"none"
时,它会有效,但不会使用网址,值保持"blue"
。
答案 0 :(得分:5)
这是一种行为,因为Angular2的风格消毒剂非常严格......似乎最近已经修复了。
请参阅此问题: