2019年如何运行一个AngularJS项目?

How to run a AngularJS project in 2019?

我想 运行 一个项目 由 Angular 1.5 编写,我知道这是 gulp 的午餐。首先我使用 npm install 安装所有依赖项,然后使用 gulp 到 运行 它。但失败了。它给了我800个问题。他们中的大多数看起来像:

 226:7   error You should not set properties on $scope in controllers. Use controllerAs syntax and add data to "this"  angular/controller-as
 292:26  error  "$" is not defined   
 334:19  warning  You should use angular.element instead of the jQuery $ object 
 18:11   error    You should not set properties on $scope in controllers. Use controllerAs syntax and add data to "this"  angular/controller-as

但是代码 运行在其他计算机上运行良好。所以我想这不是代码的问题。我一定错过了什么。就是想运行而已。请帮助我,任何信息都会有帮助。

还有一件事是我发现的,当我使用 npm install 安装依赖项时,它给了我一些错误,所以它没有安装所有依赖项。错误类似于:

gyp ERR! configure error 
gyp ERR! stack Error: EACCES: permission denied, mkdir     '/Users/jzhu321/Desktop/PwC/Projects/TeamTrack_Project/TeamTrack_Angular/node_modules/utf-8-validate/build'
gyp ERR! System Darwin 18.5.0
gyp ERR! command "/usr/local/bin/node"     "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js"     "rebuild"
gyp ERR! cwd /Users/xxxx/Desktop/xx/Projects/xxxx_Project/xxxx_Angular/node_modules/utf-8-validate
gyp ERR! node -v v10.15.2
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok 

我已经厌倦了一些修复它的方法 (chomd 777 directName..) 但是。不工作。

简答:使用 nvm.

让时光倒流

这看起来很像 node.js 版本问题。您 运行 宁 v10.x 的 Node,我敢打赌这个应用程序是在 v0.x 天后构建的,在 Node 切换到他们的 great release schedule 之前。

Node-gyp 在这么远的地方尤其有问题。它编译模块,所以它基本上是在尝试编译不是为之设计的东西。

试着找出你的 JS 是什么时候编写的,并将 Node 版本与那个时间段相匹配。您可以 运行 多个版本的 Node.js 和 nvm。这可能会很痛苦,但它正是您所需要的 - 帮助您的 JS 时间旅行回到构建此应用程序时。

在您的应用程序 运行 之前进入您的终端并设置 Node.js 的正确旧版本 运行 您的应用程序 nvm use 4 或您需要的任何版本。

然后,您将经历一个漫长而痛苦的过程来更新模块并观察事情的进展,直到您可以对应用程序进行现代化改造。