0

我们想让我们的自定义函数的名称和参数可以本地化。

如何做到这一点?

4

1 回答 1

1

您本地化整个元数据文件。然后,您从清单中引用每个此类文件。

您的CustomFunctions部分保持不变,如下所示:

                    <ExtensionPoint xsi:type="CustomFunctions">
                        <Script>
                            <SourceLocation resid="residScript" />
                        </Script>
                        <Page>
                            <SourceLocation resid="residPage"/>
                        </Page>
                        <Metadata>
                            <SourceLocation resid="residMetadata" />
                        </Metadata>
                        <Namespace resid="residNS" />
                    </ExtensionPoint>

然后在该Resources部分中,您对每个受支持的语言环境都有一个覆盖:

                <bt:Url id="residMetadata" DefaultValue="https://your.cdn.com/metadata/en_us">
                    <bt:Override Locale="bg-bg" Value="https://your.cdn.com/metadata/bg_bg" />
                    <bt:Override Locale="fr-fr" Value="https://your.cdn.com/metadata/fr_fr" />
                </bt:Url>

请记住,要本地化的不仅仅是名称——还有描述、支持 URL,最后是图标。

功能也可能需要在不同的地理市场/地区具有不同的实现。这就是为什么您也可以本地化Script文件的原因。

您以类似的方式本地化命名空间,除了它是纯字符串,而不是 URL:

            <bt:ShortStrings>
                <bt:String id="residNS" DefaultValue="default.namespace">
                    <bt:Override Locale="bg-bg" Value="българско.именно.пространство" />
                    <bt:Override Locale="fr-fr" Value="espace.des.noms.francais" />
                </bt:String>
            </bt:ShortStrings>
于 2020-08-18T16:39:35.827 回答