Ios 如何从名称中带有点的cocoapods导入库?

Ios 如何从名称中带有点的cocoapods导入库?,ios,swift,cocoapods,Ios,Swift,Cocoapods,我尝试链接的库是: pod 'Socket.IO-Client-Swift' 但当我尝试在桥接头中导入此文件时,如下所示: @import Socket.IO-Client-Swift; 我发现以下错误: 预期在模块名称之后 未找到模块插座 你知道我该怎么做才能让它工作吗?正如我所评论的,它应该是@import SocketIO,而不是@import Socket.IO-Client-Swift 但是如何/为什么?导入的pod是'Socket.IO Client Swift',而不是'So

我尝试链接的库是:

pod 'Socket.IO-Client-Swift'
但当我尝试在
桥接头中导入此文件时,如下所示:

@import Socket.IO-Client-Swift;
我发现以下错误:

预期<代码>在模块名称之后
未找到模块
插座


你知道我该怎么做才能让它工作吗?

正如我所评论的,它应该是
@import SocketIO
,而不是
@import Socket.IO-Client-Swift

但是如何/为什么?导入的pod是
'Socket.IO Client Swift'
,而不是
'SocketIO'
,那么这背后的逻辑是什么呢

实际上,Socket.IO-Client-Swift是存储库(pod)的名称,而不是
模块的名称

虽然socket.io-client-swift的中有一个
SocketIOClient.swift
文件(它确实包含创建套接字时应该直接使用的
SocketIOClient
文件/类),但您不是直接导入它;这与以下情况类似:当您想要使用
Date
struct(例如-)时,您应该导入
Foundation

侧栏注: 您是否知道这是一个合法(有效)代码:

但由于
Foundation
是隐式导入的,因此我们通常会这样做:

let date = Date()
所有框架都是一样的,例如
UIKit

let view = UIKit.UIView()
:)

端侧杆。 因此,您要导入的(
SocketIO
)是包含所有所需文件(包括
SocketIOClient.swift
)的模块名称。要让它正常工作,它将显示在其文件中:

让包=包( 名称:“SocketIO”)

包的名称是SocketIO


另一个例子:

阿拉莫菲尔:存储库的名称是阿拉莫菲尔。另外,包的名称是Alamofire!同样,您可以看到它的:

让包=包( 名称:“阿拉莫菲尔”, 排除:[“测试”])

因此,存储库的名称及其包名是相同的,这就是为什么要导入Alamofire,并将其用作Alamofire.request('https://httpbin.org/get)


真的希望能有所帮助。

正如我所评论的,应该是
@import SocketIO
而不是
@import Socket.IO-Client-Swift

但是如何/为什么?导入的pod是
'Socket.IO Client Swift'
,而不是
'SocketIO'
,那么这背后的逻辑是什么呢

实际上,Socket.IO-Client-Swift是存储库(pod)的名称,而不是
模块的名称

虽然socket.io-client-swift的中有一个
SocketIOClient.swift
文件(它确实包含创建套接字时应该直接使用的
SocketIOClient
文件/类),但您不是直接导入它;这与以下情况类似:当您想要使用
Date
struct(例如-)时,您应该导入
Foundation

侧栏注: 您是否知道这是一个合法(有效)代码:

但由于
Foundation
是隐式导入的,因此我们通常会这样做:

let date = Date()
所有框架都是一样的,例如
UIKit

let view = UIKit.UIView()
:)

端侧杆。 因此,您要导入的(
SocketIO
)是包含所有所需文件(包括
SocketIOClient.swift
)的模块名称。要让它正常工作,它将显示在其文件中:

让包=包( 名称:“SocketIO”)

包的名称是SocketIO


另一个例子:

阿拉莫菲尔:存储库的名称是阿拉莫菲尔。另外,包的名称是Alamofire!同样,您可以看到它的:

让包=包( 名称:“阿拉莫菲尔”, 排除:[“测试”])

因此,存储库的名称及其包名是相同的,这就是为什么要导入Alamofire,并将其用作Alamofire.request('https://httpbin.org/get)


真的希望能有帮助。

我想应该是
@import-SocketIO对吗?规则是什么?它为什么起作用?它是你cocoapod的主要文件。您可以看到所有其他文件都导入到此文件中。因此,您不必手动导入。它是pod的主头文件,所以每次它都取决于主头文件的名称,对吗?我想它应该是
@import SocketIO对吗?规则是什么?它为什么起作用?它是你cocoapod的主要文件。您可以看到所有其他文件都导入到此文件中。因此,您不必手动导入。它是POD的主头文件,所以每次它都取决于主头文件的名称,对吗?