列出 __dirname 中的文件
Listing files in __dirname
我正在学习 ClojureScript,我正在尝试在 __dirname
中列出文件,我无法让它工作,我想问题在于我如何获得 __dirname
本身。
我让它在定义的文件夹中工作
(ns namespace
(:require [cljs.nodejs :as node]))
(def fs (node/require "fs"))
(.readdirSync fs "/home/me")
但是当我这样做的时候
(ns namespace
(:require [cljs.nodejs :as node]))
(def fs (node/require "fs"))
(.readdirSync fs node/__dirname)
当我 cider-eval-last-sexp
时,我什么也没得到。 node/__dirname
求值为 nil
,我在编译器输出中有这个
WARNING: Use of undeclared Var cljs.nodejs/__dirname
那么,两个问题:
- 我知道最终编译的脚本放在 target/ 中,所以我应该考虑基本文件夹,如何在我的代码中指定它?
- 我正在使用 Spacemacs,我注意到 cider-repl CLJS my-project 缓冲区中出现错误,如何将它们打印到源缓冲区中?
感谢您的帮助!
nodejs/__dirname
未定义。从来没有。 that namespace.
中只有三个定义
__dirname
是每个节点模块的局部变量。所以如果你想访问那个变量,你必须这样做:
(prn (.readdirSync fs (js* "__dirname")))
我正在学习 ClojureScript,我正在尝试在 __dirname
中列出文件,我无法让它工作,我想问题在于我如何获得 __dirname
本身。
我让它在定义的文件夹中工作
(ns namespace
(:require [cljs.nodejs :as node]))
(def fs (node/require "fs"))
(.readdirSync fs "/home/me")
但是当我这样做的时候
(ns namespace
(:require [cljs.nodejs :as node]))
(def fs (node/require "fs"))
(.readdirSync fs node/__dirname)
当我 cider-eval-last-sexp
时,我什么也没得到。 node/__dirname
求值为 nil
,我在编译器输出中有这个
WARNING: Use of undeclared Var cljs.nodejs/__dirname
那么,两个问题:
- 我知道最终编译的脚本放在 target/ 中,所以我应该考虑基本文件夹,如何在我的代码中指定它?
- 我正在使用 Spacemacs,我注意到 cider-repl CLJS my-project 缓冲区中出现错误,如何将它们打印到源缓冲区中?
感谢您的帮助!
nodejs/__dirname
未定义。从来没有。 that namespace.
__dirname
是每个节点模块的局部变量。所以如果你想访问那个变量,你必须这样做:
(prn (.readdirSync fs (js* "__dirname")))