【问题标题】:Not able to make Single page application using angular 6?无法使用 Angular 6 制作单页应用程序?
【发布时间】:2018-11-21 15:03:14
【问题描述】:

我正在开发一个有点像博客网站的应用程序,其中主页上会有文章列表,一旦单击任何文章,该文章的完整详细信息将通过替换文章列表在同一页面上打开。 使用当前代码,当我单击任何文章时,它会在页面底部打开文章详细信息。 这是我所拥有的

1.Index.html

<header>
<app-root></app-root>
<footer>
  1. app.component.html

    <div>
    <p>article 1</p>
    <a routerLink="/article1"  >Link to details for article1</a>
    </div>
    <div>
    <p>article 2</p>
    <a routerLink="/article2"  >Link to details for article2</a>
    </div>
      <router-outlet></router-outlet>
    

【问题讨论】:

  • @TheHeadRush 可能是我给出的标题不正确..我知道如何制作 SPA,但我不确定如何在这个场景中做
  • 我在此链接上的回答可能会对您有所帮助,因此您可以拥有子路线:stackoverflow.com/questions/49621578/…。查看我的个人资料并了解我的应用程序是如何工作的。

标签: angular


【解决方案1】:

我强烈建议您浏览Tour Of Heros Tutorial for Angular。 它将引导您了解构建 Angular 应用程序的基础知识。

构建 Angular 应用程序的最快方法是使用 CLI,这也是学习它的最简单方法。如果您不想使用 CLI,这也是一个选项,但我不建议您在学习它的工作原理时使用它。

要开始使用 CLI:

  1. 确保您已安装 Node/NPM。
  2. 然后安装 Angular CLI npm install -g @angular/cli
  3. 然后新建一个应用ng new your-app-name
  4. 然后您可以使用ng serve -o 编译应用程序并打开Web 浏览器,此时您可以尝试进行更改。

您遇到的与"routing" the Tour of Heros Application Tutorial 相关的导航问题还逐步介绍了其工作原理。

你真的需要在这里分离你的组件

应用组件.html

  <router-outlet></router-outlet>

article-list.html

<div>
<p>article 1</p>
<a routerLink="/article1"  >Link to details for article1</a>
</div>
<div>
<p>article 2</p>
<a routerLink="/article2"  >Link to details for article2</a>
</div>

这样你就可以通过路由显示article-list,然后在你想显示文章的时候它会消失。

【讨论】:

  • 感谢您的回答。我经历过英雄之旅,但我的情况不同。我想要的是,如果我点击文章列表中的任何文章,那么整个文章列表应该被文章详细信息替换。
  • 您可以使用*ngIf 以编程方式显示文章列表和带有变量的单篇文章详细信息。
  • @NawnitSen 请用其他详细信息澄清您上面的问题。最初的问题并不清楚。您似乎也没有问题中的 RouterModule 设置代码。如果您没有使用正确的路由设置 RouterModule,您将无法导航
  • @RobertLove 我在我的应用程序中设置了 routerModule。我在末尾添加了 但是当我点击任何文章时,它会在我拥有的页面末尾打开文章详细信息写成 .
  • @JacopoSciampi 这就是我以前在 angularJS 中的做法,但我想也许会有另一种方法在 angular 中做到这一点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-11-23
  • 1970-01-01
  • 2019-03-18
  • 1970-01-01
  • 2018-12-14
  • 2014-01-21
  • 2019-01-18
相关资源
最近更新 更多