我是Spring的新手:
我不希望经过身份验证的用户访问登录页面.如果用户已经过身份验证,那么处理'/ login'重定向的正确方法是什么?说,如果已经登录,我想重定向到'/ index'.
我在登录时尝试了'isAnonomous()',但它重定向到访问被拒绝的页面.
<security:http auto-config="true" use-expressions="true" ...>
<form-login login-processing-url="/resources/j_spring_security_check"
default-target-url="/index"
login-page="/login" authentication-failure-url="/login?login_error=t" />
<logout logout-url="/resources/j_spring_security_logout" />
...
<security:intercept-url pattern="/login" access="permitAll" />
<security:intercept-url pattern="/**" access="isAuthenticated()" />
</security:http>
Run Code Online (Sandbox Code Playgroud) 我正在替换一些与特定小部件相关的头部脚本.我希望能够在评论之间找到与该小部件相关的所有节点.此外,我想轻松删除任何与指定小部件相关的代码(包括开始和结束注释).
插入和删除的代码将如下所示:
<!-- WidgetScript_WidgetName -->
<script src="Widgets/jquery.somecode.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$('.someid).dothis({parameter, avatar_size: 48, count: 6});
});
</script>
<link href="Widgets/jquery.somecode.css" media="all" rel="stylesheet" type="text/css"/>
<!--WidgetScript_WidgetName End-->
Run Code Online (Sandbox Code Playgroud) 在我之前的项目中,我使用了BeanItemContainer和一个带GeneratedColumns的表来显示一个显示搜索结果的自定义组件,比如google.标题,日期,内容以垂直方式.虽然它很糟糕(表),但它确实奏效了.
现在我想将Grid组件用于新项目,目标相同.该列将生成并包含自定义组件.
这可以与Grid一起使用吗?是否有更好的东西,如列表或转发器组件可用?具有自定义组件的单个列的任何示例?
看起来Vaadin对简单数据或Button渲染器以外的任何东西都不屑一顾.
更新
看起来添加组件不适用于Grid 7.5+
此外,网格单元格只能固定高度
ComponentRederer 附加组件支持单元组件,但修复高度仍然是个问题.
示例代码:
public class Result {
String title;
Date date;
URL url;
String description;
List<String> tags;
public Result (){}
}
BeanItemContainer<Result> resultContainer = fetchResults(searchTerm);
Run Code Online (Sandbox Code Playgroud)
我也使用Lazy Container,简单地使用beanitem.
然后我有一个RecordResultComponent,它在以下布局中构造单个记录结果的布局:
Title(link with Url)
Date
Description
tag1 tag2 tag3 ...
Run Code Online (Sandbox Code Playgroud) 我有一个接受PAGE和SIZE参数的现有REST服务
/fetchrecords?page=0&size=10
Run Code Online (Sandbox Code Playgroud)
反过来,它创建一个Spring Pageable与Spring Repository一起使用.
Pageable pageRequest = new PageRequest(page, size, Sort.Direction.DESC, "created");
Run Code Online (Sandbox Code Playgroud)
我现在想要使用Vaadin 8 CallbackDataProvider,但它会产生OFFSET和LIMIT以用于BackendDataProvider.
dataProvider = new CallbackDataProvider<MyPojo, Void>(
query -> service.fetchrecords(query.getOffset(), query.getLimit()).stream(),
query -> service.getCount());
Run Code Online (Sandbox Code Playgroud)
当然这不会作为offset!= page工作,并且根据偏移位置,限制值将根据剩余的记录数而改变.
如果不重写其余/服务,我怎样才能正确地从DataProvider OFFSET和LIMIT转到PAGE和SIZE?
\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n我已将 ESLint 规则集作为包下载并安装到我当前的项目中。我下载的规则集用于向项目环境添加对 Angular、TypeScript(当然还有 ECMAScript)的 ESLint 支持。我想创建一个 ESLint 配置,其中包含我需要从事该项目的开发人员遵守的“标准化代码风格”。
\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\n首先我添加了plugin:@typescript-eslint/recommended. 后来我决定做出改变,我转而使用plugin:@angular-eslint/recommended. 我认为Angular-eslint-recommended扩展了 TS-ESLint 插件的规则集:plugin:@typescript-eslint/recommended但实际上,它仅扩展了插件:@typescript-eslint。
问题:可以扩展多个规则集吗?扩展\n plugin:@typescript-eslint/recommended&plugin:@angular-eslint/recommended是否是我为 TS-Angular 项目提供适当的 Linting 支持所需的所有规则?