小编cse*_*sel的帖子

如何将默认打开页面更改为AppComponent以外的组件?

我有一个 Angular 6 应用程序。一开始只是一个页面(比如说“搜索页面”),所以我把app.component.html中的页面内容以及相关功能等放到了app.component.ts中。所以搜索页面是在appComponent中。现在我被要求添加另一个页面(登录页面)。所以,现在页面第一次加载时需要打开的第一个页面是登录页面。如果登录成功,则应打开“搜索页面”。

我是 Angular 的新手,所以我查看了一些路由和导航教程并应用了他们正在做的事情。问题是,现在当页面首次加载时,它会同时打开 LoginComponent 和 AppComponent(搜索页面)。位于页面登录屏幕顶部和搜索屏幕下方。另外,如果我转到“/search”,那么这次会有两个搜索页面,一个在另一个页面下。

所以我有一个额外的搜索页面。我发现问题是搜索页面位于应用程序组件中。我猜应用程序默认加载此组件。我想要的是我想首先显示LoginComponent(当页面首次加载时),如果登录成功,导航到搜索页面。

这是我为添加路由所做的操作:

  1. 我添加import {RouterModule} from '@angular/router';到我的app.module.ts

  2. 我还在这样的导入中添加了 RouterModule (再次在app.module.ts中)

    imports: [
    
        RouterModule.forRoot([
          {path: '', component: LoginComponent},
          {path: 'search', component:AppComponent}
    
        ])
    ],
    
    Run Code Online (Sandbox Code Playgroud)
  3. 添加到app.component.html<router-outlet></router-outlet>中。这个HTML文件包含我的搜索页面内容,如导航栏、表格等。在它的开头,我放置了路由器行(我知道放在我的搜索页面中是错误的,但在我观看的教程中,他放置了app.component。我猜想我的双页的原因是这个 HTML 文件,但无法让它在其他地方工作。)<router-outlet></router-outlet>

  4. login.component.html中,登录页面内容,当然还有带有 (click)="onLogin()" 的登录按钮

  5. 如果登录成功,login.component.ts包含 onLogin 函数this.router.navigate(['/search']);

  6. 最后在我的 index.html 中我调用了 body 内的 appcomponent<app-root></app-root>

现在,登录导航可以工作,但正如我所说,带有 URL 的初始页面:“ http://localhost:4200/ ”包括登录页面和搜索页面。另外,URL:“ http://localhost:4200/search ”包含两个搜索页面。

angular angular6

5
推荐指数
2
解决办法
2万
查看次数

"ORA-01858:在java类中编写查询时,找到了数字所在的非数字字符"

我有一个Web应用程序,其中3个输入来自用户,并在单击搜索按钮后显示结果.三个输入是; id(不唯一),startdate和enddate.我希望能够在这些情况下得到结果:如果用户输入

  1. 只有身份证明
  2. 仅开始日期(在db表中注册)
  3. 只有结束日期(db表中的毕业日期)
  4. id和开始日期
  5. 当所有字段一起输入时

在我的StudentManager.java类中,我有一个如下所示的SQL字符串;

final String SQL_STU = " select " 
                + " t.name,"
                + " t.surname, " 
                + " t.lecture," 
                + " from studenttable t " 
                + " where t.school = 'CHC' " 

                + " and t.id = case when '" + studentInfo.getID() + "'" +" is null then t.id else '" + studentInfo.getID() + "' end "

                + " and t.enrolldate >= case when '" + studentInfo.getStartDate() + "' is null then t.enrolldate else …
Run Code Online (Sandbox Code Playgroud)

java oracle

1
推荐指数
1
解决办法
62
查看次数

当在Java中执行while(rs.next)时,跳过Resultset的第一行

我正在尝试在java类中获取SQL查询的结果集.问题是我的表的第一行永远不会显示在我的UI上.所以我调试了它.

当第一次执行while循环时,while(rs.next)行执行然后它不进入循环,返回到while循环的开头并while(rs.next)再次执行行,现在它进入while循环并设置结果集.

但由于它没有在第一次进入循环,我的表的第一行没有设置到结果集中.

我在这里找不到问题.

我试过do{} while(rs.next)但有时它会抛出疲惫的结果集异常

    String SQL_QUERY = select * from my_table;
Statement stt = null;
stt= conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, 
    ResultSet.CONCUR_UPDATABLE,
                ResultSet.HOLD_CURSORS_OVER_COMMIT);

ResultSet rs = stt.executeQuery(SQL_QUERY);
if (rs != null) {
    rs.absolute(startRow); // I need to go to some specific row according to users request that is why I used this
} 

while(rs.next){
    // rs.getString...
}
Run Code Online (Sandbox Code Playgroud)

java jdbc

0
推荐指数
1
解决办法
344
查看次数

标签 统计

java ×2

angular ×1

angular6 ×1

jdbc ×1

oracle ×1