我试图理解我应该如何组织多个路由文件并让它们一起很好地协同工作.
我想要的路线如下:
/
/forms
/forms/:id
/forms/named-form (named-form2, named-form3, etc.)
/forms/named-form(2,3,etc)/admin
/forms/named-form(2,3,etc)/admin/(several options here)
Run Code Online (Sandbox Code Playgroud)
我想要的文件组织:
/app.module
/app.routes
/app.component <--Router Outlet
/forms/forms.module
/forms/forms.routes
/forms/forms.component <--Router Outlet for displaying Form Creation, Details, Settings, etc.
/forms/named-form/named-form.module
/forms/named-form/named-form.routes
/forms/named-form/named-form.component <--Router Outlet for displaying Form or Admin section
/forms/named-form/admin/admin.module
/forms/named-form/admin/admin.routing
/forms/named-form/admin/admin.component <--Router Outlet for various admin pages
Run Code Online (Sandbox Code Playgroud)
我现在拥有的方式:
/forms.routing.ts
const formsRoutes: Routes = [
{
path: 'forms',
component: FormsComponent,
children: [
{ path: '', component: FormsListComponent },
{ path: ':id', component: FormsListComponent }
]
}
]; …Run Code Online (Sandbox Code Playgroud) 给定一组数据。
1 | { 'completed': true }
2 | { 'office_completed': false }
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以查询office_completed != 'true'并返回两条记录?还是选择所有没有office_completed键的记录的方法?我可以使用以下命令查询所有具有office_completed键的记录:
SELECT * FROM jsonb WHERE data ? 'office_completed';
但是找不到相反的方法。
导致我遇到这个问题的原因是,我有一个可能有或没有office_completed键的数据集,我需要查询所有具有office_completed != 'true'键的记录,但是如果键不存在,那么我将一无所获。如果密钥不存在,我认为那应该算是,!=true但显然不存在。:-)我想到了另一种选择是选择所有没有office_completed键或office_completed != 'true'但无法弄清楚该怎么做的记录。
如果有人对此有更好的主意,我将不胜感激。谢谢!
最近,我一直在考虑我正在开发的应用程序的安全性.客户端是在Angular上构建的,带有Rails API后端.从我可以收集的信息来看,普遍的共识是,如果它在客户端,则认为它可能会受到损害.所以这让我想知道何时以及我是否应该使用类似于canActivate路由的东西,或者我是否应该每次在服务器上检查授权以获取路由请求.我想把auth请求放到服务器中,canActivate但我认为canActivate可以被黑客攻击响应true,绕过对服务器响应的需求?如果是这样的话,canActivate如果它只是一扇玻璃门,有什么意义呢?
我*ngFor在表中有一个子行组件,我需要用FormGroup包装.像这样的东西.
<tr [formGroup]='dependentForm'>
<td>
<input type="text" formControlName="first_name">
</td>
<td>
<input type="text" formControlName="last_name">
</td>
<td>
<input type="text" formControlName="dob">
</td>
</tr>
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何从父模板加载组件,而不会弄乱标题列对齐.
我尝试过使用元素选择器和属性选择器,但似乎有一个障碍.如果我使用属性选择器,<tr dependent-row>并tr从子项中删除我然后无法在我的inputs 周围包装任何东西来分配一个formGroup或它弄乱了列.如果我使用一个元素选择器<dependent-row></dependent-row>并将其tr放在子组件内部,就像上面的示例一样,那只是通过列出所有tr内联来使表更糟糕.
我希望我已经很好地描述了我的问题.谢谢你的期待!
UPDATE
这是使用属性选择器的示例.组件中的tr标签dependent-row抛弃了表列,但我需要添加一些东西formGroup,所以我不知道如何正确处理它.
https://plnkr.co/edit/oXxkUGKtVp0T1u4Qz8AX?p=preview
这是使用元素选择器的替代方法.