一、正常的裝飾器,比如 @auth,執行2步操作:
1、執行auth函數,并傳參func進來
2、擷取傳回值,并指派給被裝飾器的函數的函數名(如讓fetch_server_list等于傳回值)
二、而帶參數的裝飾器,比如 @auth(before,after),則執行3步操作:
1、執行auth(before,after)這個函數,得到傳回值ret(假設傳回值為ret)
2、建立裝飾器,擷取傳回值,拼接為@ret
一、正常的裝飾器,比如 @auth,執行2步操作:
1、執行auth函數,并傳參func進來
2、擷取傳回值,并指派給被裝飾器的函數的函數名(如讓fetch_server_list等于傳回值)
二、而帶參數的裝飾器,比如 @auth(before,after),則執行3步操作:
1、執行auth(before,after)這個函數,得到傳回值ret(假設傳回值為ret)
2、建立裝飾器,擷取傳回值,拼接為@ret