Go 中使用 fastwalk 时如何解决 “undefined: walkFn” 错误?

go 中使用 fastwalk 时如何解决 “undefined: walkfn” 错误?

如何在 go 中使用 fastwalk

fastwalk 是一个 go 库,用于高效地遍历文件夹及其子目录。它有一个 walk 函数,需要一个配置和一个回调函数 walkfn 来执行。

问题:

在使用 fastwalk 时,出现 "undefined: walkfn" 的错误。如何定义正确的 walkfn 函数?

答案:

walkfn 函数必须在 := 语句结束后定义。可以使用以下修改后的代码来修复错误:

func main() {
    conf := fastwalk.Config{
        Follow: false,
    }
    var data_temp []string

    var walkFn func(path string, d fs.DirEntry, err error) error // 定义 walkFn

    walkFn = func(path string, d fs.DirEntry, err error) error {
        if err != nil {
            return nil
        }

        if d.IsDir() {
            data_temp = append(data_temp, path+"\")
            return fastwalk.Walk(&conf, path, walkFn)
        }
        data_temp = append(data_temp, path)
        return nil
    }

    _ := fastwalk.Walk(&conf, "文件夹路径", walkFn)

    fmt.Println(data_temp)
}

这样,fastwalk.walk() 函数将使用正确定义的 walkfn 回调函数

以上就是Go 中使用 fastwalk 时如何解决 “undefined: walkFn” 错误?的详细内容,更多请关注硕下网其它相关文章!