Angular js 部署在 Web 服务器上的问题

Angular js deployment on web server issue

本文关键字:问题 服务器 Web js 部署 Angular      更新时间:2023-09-26

我已经用 Angular js 开发了我的第一个 spa 应用程序,但我在本地主机上完成了。

现在是时候在线测试它了。我确信一切都在本地工作,但我无法让它在线工作。

在我看来,尽管控制器链接良好,但它们没有加载。路由之所以有效,是因为 html 模板已更改,但???没有控制器

这是控制台的示例输出:

首先,对于我应用程序中的每个控制器,我都会得到这个(总共 5 次(:

Uncaught SyntaxError: Unexpected token <

之后,我得到了现在正在使用的控制器:

Error: [ng:areq] http://errors.angularjs.org/1.3.5/ng/areq?p0=homeCtrl&p1=not%20aNaNunction%2C%20got%20undefined
at Error (native)
at https://code.angularjs.org/1.3.5/angular.min.js:6:416

对于每个控制器,我都会收到相同的错误。

我遵循规则注入依赖项(在 stackowerflow 上发现了这一点,但它根本没有帮助(,所以我的每个控制器看起来像这样:

myApp.controller('nearCtrl',
['$scope', 'geolocation', 'nearApartments', 'uiGmapGoogleMapApi',
    function ($scope, geolocation, nearApartments, uiGmapGoogleMapApi) {...}])

有没有人知道我能做些什么来解决这个问题?

好的,我找到了解决方案,像往常一样,这是微不足道的,现在我觉得我开枪打中了自己的腿。

问题是我很愚蠢,没有遵循好 从 项目!

在我的索引中.html文件存在一个问题,因为很少有控制器像 myController 那样以小写形式命名.js并且它们在服务器上的真实名称与 MyController 不同.js所以存在问题。

我使用 git,

合并的分支和东西,并且可能 git 用名称搞砸了一些东西(我猜解释了它如何在 localhost 上工作(,但如果我从一开始就遵循规则,这就不会发生

对于每个想成为 Angular .js 的开发人员,像我这样的开发人员,下面的链接中描述了一些很棒的设计指南和良好实践。

使用它们!

https://github.com/mgechev/angularjs-style-guide

Tnx所有试图帮助我的人,Angular都有非常棒的社区。

问题在于您的服务器路由。您正在提供整个应用程序,而不是单个 JS 文件。你应该做的第一件事是确保 188.226.150.65/app/components/about/aboutController.js 为 aboutController.js 正确提供 JS。

查看每个组件文件夹,似乎所有控制器.js文件都有相同的错误:

    Error in exception handler: The stream or file "/var/www/html/zimmer-
production/app/storage/logs/laravel.log" could not be opened: failed to open stream: 
    Permission denied in /var/www/html/zimmer-production/bootstrap/compiled.php:9016

唯一似乎真正具有任何Javascript的控制器是注册控制器和apartmentControler。我会检查您的生产环境中的权限,因为这似乎是问题所在。