4

PHP 等解释性语言允许使用单独的文件(通常称为 config.php)来包含字符串常量,例如服务器名称。这有助于部署,因为在更新代码时根本不会上传配置文件——服务器名称(例如 REST 事务)在部署环境中通常是不同的。

在 Dart 中,由于是编译的,所以这种方式是行不通的。如果在 HTML 中通过 {{ }} 引用了服务器名称常量,则似乎必须在部署之前重新编译代码。

有没有办法以这种方式指定字符串常量以避免这种重新编译要求?

4

2 回答 2

1

我能想到几个选择:

一个技巧是将配置放入以主机名为键的映射中。在运行时,使用 window.location 作为键从地图中查找配置。这将允许将配置烘焙到 Dart 源中,但仍然允许为不同的环境指定不同的值。

如果您希望能够在编译后更改您的配置,您可以将它作为 JSON 嵌入到 HTML 源代码中,或者通过 HTTP 请求加载它。(这不是按照要求使用常量,但是,根据定义,编译后不可能更改常量)

于 2013-03-31T10:03:19.257 回答
0

好的,所以简短的回答是“你不能” - 目前。但是 Dart 团队意识到了这个限制,并根据上面的评论在 dartlang 中讨论它。

于 2013-02-03T13:25:39.013 回答