当函数在另一个文件中定义时,获取垂直函数的语法有点困难。
我想在一个包里放一个标准的铅锤功能。我的第一次尝试是这样的:
# in the package
#' Get results for plumber
#'
#' @param client the clientname
#' @param date The date of data to fetch
#' @param config a config file
#'
#' @export
plumber_ga <- function(client = "none", date = Sys.Date(), config = NULL){
message("Calling API for client:", client, " for date:", date)
...
}
然后尝试在API文件中调用该函数:
# api.R
#* Get data
#* @param client the clientname
#* @param date One day of data to fetch
#* @param config A config file TBD
#* @post /datalake/<client>/foo
plumber_ga(client = "none", date = Sys.Date(), config = NULL){
...
}
…但是当我尝试的时候,我得到一个
client is not defined
错误。有办法吗?我猜注解可能有冲突或者其他什么——或者我只需要在api.r文件中定义一次函数吗?
如果直接调用,相同的函数也可以工作:
# api.R
#* Get data
#* @param client the clientname
#* @param date One day of data to fetch
#* @param config A config file TBD
#* @post /datalake/<client>/foo
function(client = "none", date = Sys.Date(), config = NULL){
...
}
(也在包裹上询问
GitHub
)