package templatefunc import ( "html/template" "strconv" ) func BaseTemplateFunc() template.FuncMap { addInt := func(arg1, arg2 int) int { return arg1 + arg2 } addFloat := func(arg1, arg2 float64) float64 { return arg1 + arg2 } minusInt := func(arg1, arg2 int) int { return arg1 - arg2 } minusFloat := func(arg1, arg2 float64) float64 { return arg1 - arg2 } return template.FuncMap{ "addInt": addInt, "addFloat": addFloat, "minusInt": minusInt, "minusFloat": minusFloat, "discalc": DiscountCalculation, } } // DiscountCalculation 折扣计算,float64 // arg1 原件 // arg2 现价 func DiscountCalculation(arg1, arg2 float64) string { f := 1.0 - (arg2)/arg1 return strconv.FormatFloat(f*100, 'f', 0, 64) }