我有一个大型Visual Studio解决方案(运行VS 2017),其中一些项目包含AngularJS(1.4.7),一些项目包含Angular(2.0)。我不认为这是一个问题,只是完全披露。
我目前正在尝试安装Angular Material以用于Angular项目。
第一个问题:材料和 material2 是同义词吗?我知道AngularJS有一个材料,我知道它是Angular的材料,但它们似乎可以互换使用它们 - 或者至少偶尔丢弃版本号。我去安装 material2 ,我发现自己正在安装 material 。我希望它只是为我照顾正确的版本。
在我的node_modules / @ angular目录中使用Powershell,我运行的是:
npm install --SAVE angular-material
但这就是我得到的:
arv2@0.0.0 C:\proj\ClientPortal\dev\Leaves\MorneauShepell.ClientPortal\MorneauShepell.ClientPortal.Web
+-- UNMET PEER DEPENDENCY angular@>=1.3 <1.7
+-- UNMET PEER DEPENDENCY angular-animate@>=1.3 <1.7
+-- UNMET PEER DEPENDENCY angular-aria@>=1.3 <1.7
`-- angular-material@1.1.4
arv2@0.0.0 C:\proj\ClientPortal\dev\Leaves\myCo.ClientPortal\myCo.ClientPortal.Web
+-- UNMET PEER DEPENDENCY angular@>=1.3 <1.7
+-- UNMET PEER DEPENDENCY angular-animate@>=1.3 <1.7
+-- UNMET PEER DEPENDENCY angular-aria@>=1.3 <1.7
`-- angular-material@1.1.4
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\chokidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any
"} (current: {"os":"win32","arch":"x64"})
npm WARN angular-material@1.1.4 requires a peer of angular@>=1.3 <1.7 but none was installed.
npm WARN angular-material@1.1.4 requires a peer of angular-animate@>=1.3 <1.7 but none was installed.
npm WARN angular-material@1.1.4 requires a peer of angular-aria@>=1.3 <1.7 but none was installed.
我担心我不知道为什么会抱怨或者为此做些什么。
答案 0 :(得分:1)
是的,它们是完全不同的库,每个库都有自己的语法。您正在使用angular-material
为AngularJS安装材质库(对于记录,Material for Angular 2+是包@angular/material
)。 Angular 2+的材质库最初名为material2
,但此名称已修订,很少被称为material2
,只是材质。 @angular/material
的回购仍称为material2
。
在这里,npm告诉你有一些未满足的依赖项。 angualr-material
npm install
(我将其引用为AngularJS材料)声明您需要angular-animate
angular-aria
和AngularJS
,这些通常是补充库angular-messages
但由材料库使用。您需要在HTML中引用它们(或者只使用CDN)并将它们导入到Angular模块中。你还需要node_modules
,但看起来你已经安装了它。
npm WARN angular-material@1.1.4需要一个角度为@&gt; = 1.3&lt; 1.7但未安装的对等。
正如你提到的那样安装了1.4.7,那个没有意义。有时NPM的警告可能有点不准确,所以除非你的应用遇到问题,否则我会忽略它。此外,只是基于您的文件路径的想法...您在静态位置或多个位置有extension UIImage {
func grayScaleImage() -> UIImage {
//let imageRect = CGRectMake(0, 0, self.size.width, self.size.height);
let imageRect = CGRect(origin: CGPoint.zero, size: self.size)
let colorSpace = CGColorSpaceCreateDeviceGray();
let width = Int(self.size.width)
let height = Int(self.size.height)
let context = CGContext(data: nil, width: width, height: height, bitsPerComponent: 8, bytesPerRow: 0, space: colorSpace, bitmapInfo: .allZeros)
// set Fill Color to White (or some other color)
context?.setFillColor(UIColor.white.cgColor)
// Draw a white-filled rectangle before drawing your image
context?.fill(imageRect)
context?.draw(self.cgImage!, in: imageRect)
let imageRef = context?.makeImage()
let newImage = UIImage(cgImage: imageRef!)
return newImage
}
}
吗?如果是多个,那么在搜索依赖项时可能会导致npm陷入困境。