Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logging 如何确保消费应用程序中依赖项的单一版本_Logging_Npm_Aurelia_Package.json - Fatal编程技术网

Logging 如何确保消费应用程序中依赖项的单一版本

Logging 如何确保消费应用程序中依赖项的单一版本,logging,npm,aurelia,package.json,Logging,Npm,Aurelia,Package.json,为此,我使用了peerDependencies,但我想知道这是否足够,或者根本不可能 例如,使用 我创建了一个库,library-a,它使用aurelia日志记录来做一些日志记录 对于普通的依赖项,我只需将其添加为依赖项。 但是,aurelia logging包含一些全局状态(即存储所有创建的记录器),因此它公开了一个setLevel()函数,该函数可以设置所有记录器的日志级别 由于这种全局状态,最终应用程序需要使用单一版本的aurelia日志记录,整个工作才能正常进行。 如果没有,一些模块可能

为此,我使用了
peerDependencies
,但我想知道这是否足够,或者根本不可能

例如,使用

我创建了一个库,
library-a
,它使用
aurelia日志记录来做一些日志记录

对于普通的依赖项,我只需将其添加为
依赖项
。 但是,
aurelia logging
包含一些全局状态(即存储所有创建的记录器),因此它公开了一个
setLevel()
函数,该函数可以设置所有记录器的日志级别

由于这种全局状态,最终应用程序需要使用单一版本的
aurelia日志记录
,整个工作才能正常进行。 如果没有,一些模块可能会使用不同版本的
aurelia日志记录
,并且
setLevel()
函数无法正常工作

作为一名库作者,我将
aurelia日志
列为
dependencies
peerDependencies

它会做我想做的吗


“全局状态是通用的”是一个坏主意,但在这种情况下,似乎没有其他解决方法。

我想得更多,解决方案是使用一个版本锁定模块来存储这些“全局状态”

免责声明:您应该尽可能避免使用全局状态

我就是为了这个目的而创造的


再次声明:只有当你知道你做的是正确的事情时才使用它。阅读自述文件。:)

我想得更多,解决方案是使用一个版本锁定模块来存储这些“全局状态”

免责声明:您应该尽可能避免使用全局状态

我就是为了这个目的而创造的


再次声明:只有当你知道你做的是正确的事情时才使用它。阅读自述文件。:)

我想我需要
warn
中支持的
flat
模式。是这样吗?我想我需要
纱线
中支持的
平直
模式。对吗?