如果我运行命令
ng update I see a listing of items such as @angular/cdk 6.4.7 > 8.2.0 ng update @angular/cdk ... ...
可能还有其他过时的软件包。或者运行ng update --all来尝试同时更新所有内容。ng update命令本身似乎不会进行任何更改。那么,ng update --all的执行是否会发生变化?我只想看到所有的软件包都被检测到需要更新。
ng update --all
2jcobegt1#
如果你想升级到angular的主要版本,你应该参考这个网站:https://update.angular.io/
**Angular 11+:**使用包管理器的update命令:
NPM:npm updatesourceYarn:yarn upgradesource
npm update
yarn upgrade
Angular 11之前:
在2020年初,ng update --all只是更新所有软件包。大约在2020年底,--all标志被弃用:--all功能已从ng update中删除,因为不建议一次更新多个包。要更新工作区“package.json”中的依赖项,请使用包管理器的update命令
--all
ng update
yacmzcpb2#
注意:ng update命令允许使用附加参数指定以空格分隔的包:
ng update [packages] [options]
查看ng update command docs以了解更多信息。这是因为在默认情况下,ng update命令在没有任何参数/包的情况下指定时,将尝试更新所有包(如果可能)。下面是update命令的代码部分,它检查是否没有指定包:
if (options.all || packages.length === 0) { // Either update all packages or show status return this.runSchematic({ collectionName: '@schematics/update', schematicName: 'update', dryRun: !!options.dryRun, showNothingDone: false, additionalOptions: { force: options.force || false, next: options.next || false, verbose: options.verbose || false, packageManager, packages: options.all ? Object.keys(rootDependencies) : [], }, }); }
根据上面的代码,这也意味着指定--all选项或根本不指定任何选项都将尝试更新所有包。注意:您可以查看update命令的整个source code,以了解该命令的工作原理。
update
pbgvytdp3#
在Angular的新版本中,这不再包含在内,但您可以通过以下方式复制它:
ng update --force $(jq -r '.dependencies * .devDependencies | keys | map(select(startswith("@angular"))) | @tsv' package.json)
(then运行:ncu-ux '/typescript|rxjs/')我的问题是恢复功能:https://github.com/angular/angular-cli/issues/23261
ncu
-ux '/typescript|rxjs/'
3条答案
按热度按时间2jcobegt1#
如果你想升级到angular的主要版本,你应该参考这个网站:https://update.angular.io/
**Angular 11+:**使用包管理器的update命令:
NPM:
npm update
sourceYarn:
yarn upgrade
sourceAngular 11之前:
在2020年初,
ng update --all
只是更新所有软件包。大约在2020年底,
--all
标志被弃用:--all
功能已从ng update
中删除,因为不建议一次更新多个包。要更新工作区“package.json”中的依赖项,请使用包管理器的update命令yacmzcpb2#
注意:
ng update
命令允许使用附加参数指定以空格分隔的包:查看
ng update
command docs以了解更多信息。这是因为在默认情况下,
ng update
命令在没有任何参数/包的情况下指定时,将尝试更新所有包(如果可能)。下面是update命令的代码部分,它检查是否没有指定包:
根据上面的代码,这也意味着指定
--all
选项或根本不指定任何选项都将尝试更新所有包。注意:您可以查看
update
命令的整个source code,以了解该命令的工作原理。pbgvytdp3#
在Angular的新版本中,这不再包含在内,但您可以通过以下方式复制它:
(then运行:
ncu
-ux '/typescript|rxjs/'
)我的问题是恢复功能:https://github.com/angular/angular-cli/issues/23261