我有一个简单的表单,需要验证输入的开头和结尾是否不是空格.
在HTML5中,我将这样做:
<input type="text" pattern="^(?!\s|.*\s$).*$">
Run Code Online (Sandbox Code Playgroud)
新Angular 2 ngControl指令中验证模式的正确属性是什么?官方Beta API仍缺乏此问题的文档.
通常在一个普通的javascript网站上,我可以使用以下脚本来引用google maps api并设置该callback
功能initMap
.
<script async defer src="https://maps.googleapis.com/maps/api/js?callback=initMap"></script>
我观察到的是initMap
在普通的JavaScript网站正在窗口范围功能,它可以在脚本参数设置中引用- ?callback=initMap
,但有一次我写angular2一个名为组件方法组件initMap
,该initMap
会的范围之内我的组件.然后我在索引中设置的异步加载脚本将无法捕获我的组件initMap
方法.
Angular2
?PS:我知道有一个
angular2-google-maps
组件可用于alpha
vianpm
,但目前它的功能有限,所以我想知道如何在不使用其他组件的情况下以更简单的方式加载它,这样我就可以使用google maps api来实现我的项目.
我有一个promise对象需要解析为另一个组件,如何实现这一点,以便在component-one
解析promise时,解析的promise对象component-two
也可以解析?
@Component({
selector: 'component-one',
template: `
<h1>Title</h1>
<component-two [promisedData]="promisedData"></component-two>
`,
directives: [ComponentTwo]
})
export class ComponentOne {
promisedData: Promise<any>;
constructor () {
this.promisedData = new Promised(resolve => {
setTimeout(function(){
resolve('Test');
}, 1000);
});
}
}
Run Code Online (Sandbox Code Playgroud)
@Component({
selector: 'component-two',
template: `
<h2>
{{processedData}}
// the {{processedData}} is undefined becaused the
// resolved promise doesn't get to parse to the component-two.
</h2>
`,
inputs: ['promisedData']
})
export class ComponentTwo {
promisedData: Promise<any>;
processedData: string;
constructor () …
Run Code Online (Sandbox Code Playgroud)我从教程中找到了这段代码,我猜测该方法的getUriBase
返回类型是String
,但不清楚<T extends IEntity>
该方法中正在发挥什么作用以及为什么将其放在开头?
public interface IUriMapper {
<T extends IEntity> String getUriBase(final Class<T> clazz);
}
Run Code Online (Sandbox Code Playgroud) 我已经创建了一个服务,它有一个将发出一个事件的流$,我希望在app.component激发流$ emit后,子组件<router-outlet></router-outlet>
将能够订阅它,但现在我遇到的问题是即使它在构造函数中订阅它,订阅回调永远不会被触发.
我想知道这是否与通过流服务发送事件时不同?
什么是最佳做法?