Bootstrap 4验证样式基于form-control:valid或form-control:invalid.Angular提供了在字段出错时添加任何自定义类的可能性.
如果我遵循规范:https: //getbootstrap.com/docs/4.0/components/forms/#validation
我也可以.form-control.is-invalid为我的input元素添加类.但是,使用具有此策略的自定义验证程序可以为我提供合并的结果;form-control is-invalid :valid
这似乎更重要:valid,这表明我的元素显示为有效,但相关invalid-feedback的看起来没问题!
我有点失落.
这是一个演示插件:https://plnkr.co/edit/0kxGpRz3JY3ixJbYqRZr ? p = preview
我正在尝试进行chrome扩展,它将有一个免费试用版。按照此处的文档操作,首先要做的就是启用Chrome Identity API。据我所知,没有这样的事情...
无论如何...我已经完成了所有其他步骤,最终出现500错误。
这是我所做的一部分。当然,我更改了所有ID,键,令牌等的值。
manifest.json
{
"name": "The name of my app",
"version": "1.0.9",
"key": "my_very_long_key",
"description": "A description",
"manifest_version": 2,
"permissions": [ "activeTab", "storage", "declarativeContent", "identity", "https://www.googleapis.com/" ],
"oauth2": {
"client_id": "the_client_id_i_setup_in_Credentials_oauth2_section.apps.googleusercontent.com",
"scopes": [
"https://www.googleapis.com/auth/chromewebstore.readonly"
]
},
// other stuff...
Run Code Online (Sandbox Code Playgroud)
码
chrome.identity.getAuthToken({
'interactive': true
}, (token) => {
console.log("Token: %o", token);
console.log("chrome.runtime.id: %o", chrome.runtime.id);
var CWS_LICENSE_API_URL = 'https://www.googleapis.com/chromewebstore/v1.1/userlicenses/';
var req = new XMLHttpRequest();
req.open('GET', CWS_LICENSE_API_URL + chrome.runtime.id);
req.setRequestHeader('Authorization', 'Bearer ' + token);
req.setRequestHeader('Content-Type', 'application/json');
req.onreadystatechange = …Run Code Online (Sandbox Code Playgroud) 我有这个配置...
@Configuration
@EnableAutoConfiguration
@EnableTransactionManagement
@ComponentScan
@EntityScan(basePackageClasses = {Jsr310JpaConverters.class, MyEntity.class})
public class ApplicationConfig extends WebMvcConfigurerAdapter {
@Bean
public MappedInterceptor correlationIdMappedInterceptor() {
return new MappedInterceptor(new String[] {"/**"}, new CorrelationIdInterceptor());
}
@Bean
public MappedInterceptor loggingMappedInterceptor() {
return new MappedInterceptor(new String[] {"/**"}, new LoggingInterceptor());
}
// More config...
}
Run Code Online (Sandbox Code Playgroud)
...并且我想确保始终在 之前correlationIdMappedInterceptor执行。 loggingMappedInterceptor
我有一些@RestControllers AND @RepositoryRestResource s(或CrudRepository),并且我希望我的拦截器能够在两者上工作。我尝试覆盖:
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new MappedInterceptor(new String[] {"/**"}, new CorrelationIdInterceptor()));
registry.addInterceptor(new MappedInterceptor(new String[] {"/**"}, new LoggingInterceptor()));
}
Run Code Online (Sandbox Code Playgroud)
它可以完成这项工作,但仅适用于@RestController …