SinzuMoney 0.1.0

SinzuMoney 0.1.0

Afees Lawal 维护。



  • 作者
  • Afees Lawal

SinzuMoney

这是货币类型的一个简单类型安全的表示。

Swift Version License Platform CocoaPods Compatible

要求

  • iOS 12.0+
  • Xcode 11

安装

CocoaPods

您可以使用CocoaPods通过将 YourLibrary 添加到您的 Podfile 中来安装它

platform :ios, '8.0'
use_frameworks!
pod 'SinzuMoney'

用法示例

import SinzuMoney

Sinzu Money 使用奈拉作为其默认货币类型,并可以使用任何货币数值进行初始化

let money = Money.from(value: 10.32) // Positive value

let localizeMoney = money.localized
print(localizeMoney) //returns  ₦10.32

let localizedMoney = Money.from(value: -10000000.32) // Negative value
let localized = localizedMoney.localized

print(localizedMoney) // returns ₦-10,000,000.32



但它不仅仅局限于奈拉,您可以使用地球上任何已知的货币类型,只需使用货币代码即可:

let usDollarCurrency = Money.Currency(code: "USD", name: "Dollar", symbol: "$", baseUnit: "US Dollar", decimalUnit: "Cent”). 

let moneyWithNewCurrency = money.newWith(currency: usDollarCurrency)

print(moneyWithNewCurrency.localizedBalance) // returns $1,234.23K

您还可以仅更改货币符号

let dollarCurrency = Money.Currency.from(code: "$")

let newDollarCurrencyMoney = money.newWith(currency: dollarCurrency)

print(newDollarCurrencyMoney.localizedBalance) // returns  $1,234.23K

Sinzu Money 可以帮助您获取任何数值的货币单位

 let thousandMoney = Money.from(value: 30000.00)

 print(thousandMoney.unit) // returns “K”

 let millionMoney = Money.from(value: 3000000.00)
 
print(millionMoney.unit) //  returns M

 let billionMoney = Money.from(value: 30000000000.00)

 print(billionMoney.unit) // returns B

Sinzu Money 还可以帮助您获取可读性强的值

let localizedMoney = Money.from(value: 1240000.6254204)
let localized = localizedMoney.humanReadable
print(localizedMoney) // returns 1,240,000.63

您还可以获取任何金额后缀值

 let thousandMoney = Money.from(value: 30000.00)

 print(thousandMoney.suffixAmount) // returns  +30K

 let millionMoney = Money.from(value: 3000000.00)
  
 print(millionMoney.suffixAmount) // returns  +3M 

 let billionMoney = Money.from(value: -30000000000.00)

 print(billionMoney.suffixAmount) // returns  -30B

如果您想将货币值发送到后端,您可以将您的值转换为十进制或整数

let money = Money.from(value: 1234.23)

print(money.backendDecimalPostableAmount) // returns 123423
print(money.backendIntegerPostableAmount) // returns  123400

贡献力量

我们非常欢迎您为 SinzuMoney 的贡献,请查阅 LICENSE 文件获取更多信息。