gpt4 book ai didi

仅在您导入时应用的 Swift 扩展

转载 作者:搜寻专家 更新时间:2023-10-30 21:58:49 25 4
gpt4 key购买 nike

我有一些跨项目的快速扩展。

不过我想避免类别污染,除非请求这些扩展。

是否可以将它们编写成仅在我完成特定导入后才适用,例如:

import MySwiftExtensions

// Use custom extensions
let x = [1,3,5,7].average()
let y = [1,3,5,7].firstWhere { $0 > 3 }
let z = "campervan".make1337()

我可以将这些写成包含在单个字母类中的静态方法(例如:ø.average([1,3,5,7]),如 lodash )以实现相同的目的事情,但有时您会从实例方法中获得更简洁的用法。

最佳答案

你写道:

I have some swift extensions I want to across projects...

当我有想要跨项目使用的代码时,我会创建一个单独的框架来保存该代码。然后,当我想在新项目中使用该代码时,我将框架嵌入到该项目中。或者,出于开发目的,我创建了一个包含项目和框架的工作区。这让我可以同时处理这两者,然后只在需要导出框架时才将框架嵌入到最终产品中。

一旦框架被嵌入或在同一个工作区中,那么您应该能够将它导入到项目中的任何单个文件中:

import MySwiftExtensions

任何没有导入语句的文件都无法访问扩展。

编辑:

这里是 a link到描述如何创建 Cocoa Touch Framework 的博客。这是another link详细描述了如何在开发项目中使用工作空间来使用框架。

关于仅在您导入时应用的 Swift 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36944321/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com