1

目的是为服务器端 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');

解决这个问题的最佳方法是什么?我看过这篇文章:Get script path in Dart (analog __DIR__ constant in PHP)这是同样的情况,但是我看不到使用相对路径查找路由文件夹的干净方法。

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

4

1 回答 1

1

Dart 不支持此功能。也许 Mezoni 找到了某种技巧来获取他打包在他的caller_info包中的这些信息https://stackoverflow.com/a/24880092/217408

您不能依赖在开发过程中存储文件的路径。
目前它只是实验性的,但是当您在代码上运行时dart2dart,代码的所有或许多部分都是内联的。

于 2014-09-28T16:20:52.373 回答