我想运行一个由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
我已经厌倦了一些方法来修复它(chmod 777目录名称..)但是。不行。
简短的回答:用nvm回头时间。
这看起来很像node.js版本问题。你正在运行Node的v10.x
,我打赌这个应用程序是在v0.x
天内建立的,然后Node切换到他们的great release schedule。
特别是Node-gyp
在这方面遇到了问题。它编译模块,所以它基本上是在尝试编译不适合的东西。
尝试弄清楚JS的编写时间并将Node版本与该时间段相匹配。您可以使用nvm运行多个版本的Node.js.这可能是一种痛苦,但它就是你所需要的 - 帮助你的JS时间回到这个应用程序构建时。
在你的应用程序上运行npm install
之前进入你的终端,并设置适当的旧版本的Node.js,它将运行你的应用程序,如nvm use 4
或你需要的任何版本。
然后,您将需要一个漫长而痛苦的过程来更新模块并观察事情,直到您可以实现应用程序的现代化。