Configuration 在Dart中获取已访问脚本的路径

Configuration 在Dart中获取已访问脚本的路径,configuration,dart,config,dirname,Configuration,Dart,Config,Dirname,其目的是为服务器端Dart应用程序创建一个配置文件,可以根据需要将其导入脚本中,如下所示: import 'Config/config.dart'; 然而,对于这个配置脚本来说至关重要的是,当通过导入进行访问时,它知道自己的位置(而不是访问它的文件的位置)。目前,它使用下面这一行查找路径: final String ROOT_DIR = dirname(Platform.script.toFilePath()); 但是,这将返回导入它的文件的文件路径,而不是正在导入的文件。这仅仅是为了计算到

其目的是为服务器端Dart应用程序创建一个配置文件,可以根据需要将其导入脚本中,如下所示:

import 'Config/config.dart';
然而,对于这个配置脚本来说至关重要的是,当通过导入进行访问时,它知道自己的位置(而不是访问它的文件的位置)。目前,它使用下面这一行查找路径:

final String ROOT_DIR = dirname(Platform.script.toFilePath());
但是,这将返回导入它的文件的文件路径,而不是正在导入的文件。这仅仅是为了计算到根文件夹的相对路径,这将允许在配置文件中知道其他绝对路径(如路由、控制器等),例如:

final String PUBLIC_DIR = join(ROOT_DIR, 'Public');
final String VIEWS_DIR = join(ROOT_DIR, 'Views');
最好的方法是什么?我看过这篇文章:这也是同样的情况,但是我看不到使用相对路径来查找路由文件夹的干净方法


可能遗漏了一些非常明显的东西,但目前看不到。非常感谢您的帮助,谢谢阅读。

Dart不支持此功能。 也许梅佐尼找到了某种技巧来获取这些信息,他将这些信息打包在他的
来电者信息
包中

在开发过程中,不能依赖文件的存储路径。

目前它只是实验性的,但当您在代码上运行
dart2dart
时,代码的所有或许多部分都是内联的。

啊,好吧,所以它甚至不知道缩小的和树震动的目录/文件将在哪里?我会将此标记为答案,但dart无法访问bash文件并获取此信息吗?或者你是说dart应用程序将被编译成一个文件?(这就是我从阅读本文中所期望的:)。谢谢您的回答。当您运行pub build(dart2js/dart2art)时,代码可以在一个文件中结束。Transformers可以删除代码并插入新生成的代码。脚本文件可以从临时URI加载。。。Dart仅提供初始脚本文件的路径(包含
main()
)。