String 如何存储要与format宏一起使用的大字符串文本,而不需要乱扔代码?

String 如何存储要与format宏一起使用的大字符串文本,而不需要乱扔代码?,string,rust,formatting,literals,String,Rust,Formatting,Literals,我的库中有一个函数,它接受一些变量并返回一个HTML页面,其中插入了这些变量。最好的做法是不要在我的模块中乱扔大量HTML文本?我的意思是,当我阅读我的代码时,它只是“似乎不正确”,我必须滚动浏览一段HTML 我使用格式宏,在我想要插入变量的文本中有“{}”的地方,所以我想保持页面作为文件并加载它是不可行的。我不必使用格式宏,但当我有这种工具时,不手动处理文本似乎很优雅 创建一个完整的模块来保存这个页面是一个好的实践吗?在我看来,模块是“更大”的东西,但也许这是最好的做法?您可以将HTML保存在

我的库中有一个函数,它接受一些变量并返回一个HTML页面,其中插入了这些变量。最好的做法是不要在我的模块中乱扔大量HTML文本?我的意思是,当我阅读我的代码时,它只是“似乎不正确”,我必须滚动浏览一段HTML

我使用
格式宏,在我想要插入变量的文本中有“{}”的地方,所以我想保持页面作为文件并加载它是不可行的。我不必使用
格式宏,但当我有这种工具时,不手动处理文本似乎很优雅


创建一个完整的模块来保存这个页面是一个好的实践吗?在我看来,模块是“更大”的东西,但也许这是最好的做法?

您可以将HTML保存在外部文件中,并通过。比如说

让html\u code=format!(包括_str!(“src/index.html”)、我的、值、在、模板中);
由于文件的编译时要求,游乐场应用程序在这里无法正常工作,但在本地,以下各项工作正常:

src/
    foo.txt -- "{}"
    main.rs -- println!(include_str!("foo.txt"), 1234);

请定义“垃圾”,最好使用一些客观指标。对你来说是“垃圾”的东西对其他人来说可能不是,如果有人试图帮助你只是为了“垃圾”,这是一种耻辱。提供一个代码示例(使用截断的文本!)可能也会有所帮助。最好说明您有哪些硬约束。您是否特别要求使用
格式
宏?
格式
似乎是生成大块HTML的错误工具。@mcarton这怎么回事?@janqo至少你需要一个理解HTML转义的工具。我使用
格式宏,在文本中有“{}”的位置-请演示如何使用您的解决方案。另请参见@Shepmaster,事实上它确实有效,我在本地测试了它,并反映在我的编辑中。