能否将一个 HAML 文件导入另一个 HAML 文件?

Can a HAML file be imported into another HAML file?

我有许多 haml 个文件,其中许多文件具有相同的变量 declared/set。我希望能够一次更改该变量的值。我想要一个 haml 文件,我在其中声明并设置所有变量,然后有 N 个 haml 文件导入共享变量文件以实际使用这些值。我没有使用任何框架,也不想将应用程序转换为使用其他框架。是否可以将 haml 文件导入其他 haml 文件,就像我在没有其他框架的情况下尝试做的那样?

Gem 安装命令:

sudo gem install haml

终端构建命令:

haml index.haml index.html

目标结构:

共享-variables.haml

- country = "United States"

index.haml

import shared-variables.haml # does not work - just illustrating what I'd like to do
!!!
%html{
    lang: "en"
}
    %head
        %title #{country}

我找到了一个可行的解决方案,但我仍然有兴趣听听是否有更好的做法。这是我想出的解决方案:

  1. 创建一个共享变量ruby文件
  2. 创建一个public数据模块
  3. 在DATA模块中定义我想要的变量
  4. 在 haml 模板中,导入 ruby 文件
  5. 引用haml文件中的DATA模块获取变量值

共享-variables.rb

module DATA
    COUNTRY = "2021-09-11"
end

index.haml

:ruby
    require_relative "shared-variables"

!!!
%html
    %head
        %title #{DATA::COUNTRY}