我知道如何为基于用户创建文件时输入的文件名命名的ViewControllers,ViewModels等创建模板,但是我还没有找到一种方法来强制某些变量的驼峰小写。

因此,基本上我想在其中包含一些变量的情况下创建VC文件,显然这些变量的类型取决于文件名(大写驼峰大写),而名称取决于小写驼峰。

例:

class FileNameViewController {
    var fileNameViewModel: FileNameViewModelDelegate?
}

class FileNameViewModel {
    var fileNameViewController: FileNameViewControllerDelegate?
}

protocol FileNameViewControllerDelegate {
    ...
}

protocol FileNameViewModelDelegate {
    ...
}


是否可以让模板根据文件名填写小写字母形式的变量名和大写驼峰类型?

最佳答案

无法在受支持的修饰符(描述为Xcode official doc)之外处理Xcode模板文本宏。

但是,我发现以下方法很方便(采用您的示例):

//___FILEHEADER___

import Foundation

class ___FILEBASENAMEASIDENTIFIER___ViewController {
    var model___FILEBASENAMEASIDENTIFIER___: ___FILEBASENAMEASIDENTIFIER___ViewModelDelegate?
}

class ___FILEBASENAMEASIDENTIFIER___ViewModel {
    var controller___FILEBASENAMEASIDENTIFIER___: ___FILEBASENAMEASIDENTIFIER___ViewControllerDelegate?
}

protocol ___FILEBASENAMEASIDENTIFIER___ViewControllerDelegate {
}

protocol ___FILEBASENAMEASIDENTIFIER___ViewModelDelegate {
}


对于Card文件名,它将生成:

//
//  Card.swift

import Foundation

class CardViewController {
    var modelCard: CardViewModelDelegate?
}

class CardViewModel {
    var controllerCard: CardViewControllerDelegate?
}

protocol CardViewControllerDelegate {
}

protocol CardViewModelDelegate {
}

关于swift - Xcode Swift模板小驼峰式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59536491/

10-09 02:31