2016-03-04 82 views
1

我开始学习Angular 2,并且我在某些主题上相当迷茫......比如服务器。Angular 2:NodeJS vs XAMPP

按照快速设置说明我安装了Node和npm ...当我在Node中运行项目时,一切都变得完美。标签<label>被识别并获得该标签的模板(在这种情况下是html表单)。

但是,当我在MAMP中运行同一个项目时,该标签未被识别,并出现与该标签关联的模板在控制台的控制台中出现“Failed to load resource”错误。

所以我猜角2依赖于节点,因为我要上传后的项目,我想我的托管计划不允许我运行节点,这是一个问题......

我不知道我是否预先判断,也许有人可以帮我清楚这一点...谢谢。

+0

我的所有项目都在Apache下,所以我不认为这是个问题。除了你的标题说XAMPP,但你的问题说MAMP。 –

+0

无论你使用什么web服务器都不重要。 IIS,Apache或简单的Express服务器。 Angular 2不以任何方式依赖于服务器。 – dfsq

+0

XAMPP否它是一个服务器https://en.wikipedia.org/wiki/XAMPP在这种情况下的服务器是(A)Apache,你可以找到如何配置Apache服务器,我认为解决,并澄清疑惑,我希望它会有所帮助。 –

回答

1

Angular2有niether任何关系也没有对任何node.js依赖

您可以使用Angular2软件包编写Angular2应用程序,而无需使用nodemampxampp或主机该应用程序。

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

+0

感谢您的回答。我正在研究那些免费的主机服务,但我更喜欢“正常的”(Apache,PHP)...我仍然迷路,但你们都说我不需要Node,所以我会回去我的步骤和调查我可以做到这一点。 – Adri

+0

了解Angular2 [从这里开始](https://angular.io/docs/js/latest/quickstart.html)创建第一个应用[视频教程](https://www.youtube.com/watch?v=uD6Okha_Yj0&noredirect = 1)[Text Tutorial](https://angular-tutorial.quora.com/10-minutes-making-a-simple-Angular-2-Todo-App-Part-1) –

0

谢谢,Zeeshan,在你给我的线索的线索。正如我告诉我的原始消息,我开始关注快速入门,但我忘了提及我选择了JavaScript中的TypeScript ...,这是“错误”,因为TypeScript需要Node才能编译为JavaScript,因为我猜测对于结果我得到:

  • 的打字稿项目只能运行通过控制台在节点处执行它(“NPM启动”),而不是在Apache中,这并不让所有的角部位后(它获取标签<whatever></whatever>但不把它翻译成内容<whatever><h1>Hey</h1></whatever>
  • 使用JavaScript它的工作原理“一如既往”,而不需要一台服务器,因为你告诉我

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

1

最终的解决方案

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

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

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

  • 什么我不知道是为什么它的工作原理与错误的路径,当我从节点运行它!一个错误会节省我很多时间...和你的...

那么,至少我已澄清了很多概念在这次调查中。谢谢你们!