【问题标题】:Angular 2: NodeJS vs XAMPPAngular 2:NodeJS 与 XAMPP
【发布时间】:2016-03-04 11:45:53
【问题描述】:

我开始学习 Angular 2,但我对某些科目很迷茫……比如服务器。

按照快速设置的说明,我安装了 Node 和 npm...当我在 Node 中运行项目时,一切都很完美。标签<label> 被识别并获取该标签的模板(在本例中为 html 表单)。

但是当我在 MAMP 中运行同一个项目时,该标签无法被识别,并在控制台中针对与该标签关联的模板显示“加载资源失败”错误。

所以我猜 Angular 2 依赖于 Node,这是个问题,因为我想稍后上传项目,而且我认为我的托管计划不允许我运行 Node...

我不知道我是否在预判,也许有人可以帮我解决这个问题...谢谢。

【问题讨论】:

  • 我的所有项目都在 Apache 下,所以我认为这不是问题。除此之外,您的标题是 XAMPP,但您的问题是 MAMP。
  • 无论你使用什么网络服务器都不重要。 IIS、Apache 或简单的 Express 服务器。 Angular 2 不以任何方式依赖服务器。
  • XAMPP no it a server en.wikipedia.org/wiki/XAMPP 在这种情况下的服务器是(A)Apache,你可以找到如何配置一个Apache服务器,我认为解决,并澄清疑惑,我希望它会帮助。
  • 好吧,完美主义者,所以问题不在于 MAMP 的 XAMPP 是否是服务器,我知道它们不是。也许 LAMP 与 MEAN 或 Apache 与 Node 更好。但是你们所有人都说 Angular 2 不需要 Node 并且可以在 Apache 上运行,这是我真正的问题......然后继续下一个问题:如何?在 Angular 中,您只需在 HTML 中添加一些脚本和 CSS,就可以运行 Angular。但正如我所看到的,Angular2 不是那样工作的......也许有人可以向这个无知的人解释这一点,而不叫我无知,我知道我是。

标签: node.js angular mamp


【解决方案1】:

Angular2 在node.js 上既没有任何关系,也没有任何依赖

您可以只使用 Angular2 包而不使用 nodemampxampp 来编写 Angular2 应用程序并托管该应用程序。

如果您在 Angular2 和 node.js 组合中编写过任何东西,那么您可以将其托管在 Heroku 等免费服务上用于测试目的。

【讨论】:

  • 感谢您的回答。我正在调查那些免费的主机服务,但我更喜欢“普通的”(Apache,PHP)......我还是迷路了,但是你们都说我不需要 Node,所以我会回去我的步骤并调查我如何做到这一点。
  • 了解 Angular2 Start Here 创建第一个应用程序 Video Tutorial Text Tutorial
【解决方案2】:

最终解决方案

好吧,又错了。我是有史以来最差的侦探。

  • 它可以像使用 JavaScript 一样使用 TypeScript,只需要“npm start”即可将 TypeScript 编译成 JavaScript。然后它会自动在“本地主机”上运行,但是一旦编译,您就可以像运行任何 html 一样运行 index.html,而不需要服务器,就像你们都说的那样,它不像 .php 那样有意义。

  • 所以导致我产生所有这些误解的问题是节点“localhost”工作而Apache“localhost”没有工作,错误是我调用@Component:templateUrl: "../template/file.html" ,并且路径写在“/app/whatever.js”中,但它是从“index.html”工作的,所以它只是templateUrl: "template/file.html",一切都按预期工作。

  • 当我从 Node 运行它时,我不知道它为什么会工作,但路径错误!一个错误会为我节省很多时间......还有你的......

好吧,至少我在这次调查中澄清了很多概念。谢谢大家!

【讨论】:

    【解决方案3】:

    谢谢,Zeeshan,在链接中你给了我线索。正如我在原始消息中所说,我开始关注快速入门,但我忘了提到我选择 TypeScript 而不是 JavaScript……这是“错误”,因为我猜 TypeScript 需要 Node 编译为 JavaScript对于我得到的结果:

    • TypeScript 项目仅在通过控制台(“npm start”)在 Node 中执行后运行,而不是在 Apache 中运行,它没有得到所有 Angular 部分(它得到标签 <whatever></whatever>,但没有将其转换为内容<whatever><h1>Hey</h1></whatever>)
    • 使用 JavaScript,它“像往常一样”工作,不需要服务器,正如您告诉我的那样

    所以我将不得不选择使用 TypeScript(以及所有官方文档!)并将其托管在 Heroku 等平台上,或者在不需要特定服务器的情况下使用 JavaScript,这样我仍然可以使用 Apache。

    【讨论】:

      猜你喜欢
      • 2016-12-01
      • 2017-06-30
      • 2016-07-09
      • 2016-09-09
      • 2018-11-14
      • 2017-11-28
      • 2017-05-21
      • 2023-03-28
      • 1970-01-01
      相关资源
      最近更新 更多