从mac 10中的Win 10转移角度4项目

时间:2017-07-23 01:42:58

标签: angular angular-cli

我在win 10中有一个项目运行正常。 @ angular / core 4.2.6 + firebase 3 @ angular / cli 1.2.1 节点6.9.4

我试图将它转移到macOS但没有任何作用。 我试图更新项目,但角度版本变为5 ......! macOs上的节点是8.0.0! 每件事都不一样!

最佳解决方案是什么?我如何管理这个快速移动/不同的包升级?

以下是我在macOS中使用" ng new proj"在更新项目之前:

angular-cli: 1.0.0-beta.28.3
node: 8.0.0
os: darwin x64
@angular/common: 2.4.10
@angular/compiler: 2.4.10
@angular/core: 2.4.10
@angular/forms: 2.4.10
@angular/http: 2.4.10
@angular/platform-browser: 2.4.10
@angular/platform-browser-dynamic: 2.4.10
@angular/router: 3.4.10
@angular/compiler-cli: 2.4.10

然后我用它升级到角4:

sudo npm install @angular/{common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router,animations}@next --save

这一点我得到角度5

angular-cli: 1.0.0-beta.28.3
node: 8.0.0
os: darwin x64
@angular/animations: 5.0.0-beta.0
@angular/common: 5.0.0-beta.0
@angular/compiler: 5.0.0-beta.0
@angular/core: 5.0.0-beta.0
@angular/forms: 5.0.0-beta.0
@angular/http: 5.0.0-beta.0
@angular/platform-browser: 5.0.0-beta.0
@angular/platform-browser-dynamic: 5.0.0-beta.0
@angular/platform-server: 5.0.0-beta.0
@angular/router: 5.0.0-beta.0
@angular/compiler-cli: 5.0.0-beta.0

这是原创项目在胜利10中的表现:

enter image description here

如果我只是将项目文件夹复制到macOS并运行它而不做任何更改,我会得到这个:

    The "@angular/compiler-cli" package was not properly installed. Error: TypeError: Cannot read property 'Private' of undefined
Error: The "@angular/compiler-cli" package was not properly installed. Error: TypeError: Cannot read property 'Private' of undefined
    at Object.<anonymous> (/Users/username/.Trash/myForm 11.32.24 PM/node_modules/@ngtools/webpack/src/index.js:14:11)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/Users/username/.Trash/myForm 11.32.24 PM/node_modules/angular-cli/models/webpack-configs/typescript.js:3:17)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/Users/username/.Trash/myForm 11.32.24 PM/node_modules/angular-cli/models/webpack-configs/index.js:9:10)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/Users/username/.Trash/myForm 11.32.24 PM/node_modules/angular-cli/models/webpack-config.js:4:25)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/Users/username/.Trash/myForm 11.32.24 PM/node_modules/angular-cli/tasks/serve.js:11:24)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/Users/username/.Trash/myForm 11.32.24 PM/node_modules/angular-cli/commands/serve.run.js:6:15)
    at Module._compile (module.js:569:30)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:503:32)
    at tryModuleLoad (module.js:466:12)
    at Function.Module._load (module.js:458:3)
    at Module.require (module.js:513:17)
    at require (internal/module.js:11:18)
    at Class.run (/Users/username/.Trash/myForm 11.32.24 PM/node_modules/angular-cli/commands/serve.js:67:16)
    at Class.<anonymous> (/Users/username/.Trash/myForm 11.32.24 PM/node_modules/angular-cli/ember-cli/lib/models/command.js:134:17)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:169:7)

3 个答案:

答案 0 :(得分:1)

当你将项目从一个操作系统移动到另一个操作系统时,我不建议从头开始创建它,原因是,angular-cli会经常得到更新。

因此,每次使用ng new PROJECTNAME安装和创建新项目时,您将始终获得所有库的最新版本(取决于angular-cli版本)。

解决方案:

  • 创建现有项目的一个github存储库
  • 添加,提交和推送您的项目代码,包括package.json(负责维护版本)
  • 在其他环境中克隆并设置项目(在Mac OS上为您的情况)

您可能必须执行类似的命令

$ npm install -g @angular/cli  (Note: If angular-cli is already installed then skip this step)
$ git clone CLONE REPO URL
$ cd PROJECTREPO
$ npm install
$ Run `ng serve` for a dev server.

答案 1 :(得分:0)

重新安装项目时,安装的角度Cli版本通常已过时。在复制或重新创建新项目之前卸载angular-cli和node。更新你的npm并安装node和angular-cli。执行new并复制项目/ app和/ assets文件夹以及index.html,style.css等。这应该会有所帮助。

答案 2 :(得分:0)

问题在于: 要卸载CLI 1.0.0-beta.28或更低版本(我的情况),我们需要运行

npm uninstall -g angular-cli
npm uninstall --save-dev angular-cli

之后,我在全球和本地重新安装了最新的CLI。

非常感谢post