是否可以在 AngularJS 翻译中的 $translateProvider.useStaticFilesLoader 中添加后缀作为正则表达式?
Is it possible to add suffix as regex in $translateProvider.useStaticFilesLoader in AngularJS Translation?
在 AngularJS 翻译配置中,我们可以将 $translateProvider.useStaticFilesLoader 后缀 属性 作为正则表达式。
让我们说下面是一个示例配置:
$translateProvider.useSanitizeValueStrategy('sanitize');
$translateProvider.useStaticFilesLoader({
files: [{
prefix: 'i18n/local-',
suffix: '.json'
}]
});
$translateProvider
.preferredLanguage("en");
改为后缀为'.json',是否可以将其设为
$translateProvider.useSanitizeValueStrategy('sanitize');
$translateProvider.useStaticFilesLoader({
files: [{
prefix: 'i18n/local-',
suffix: '-[0-9a-f]{8,10}-?.json'
}]
});
$translateProvider
.preferredLanguage("en");
谢谢。
不,这很容易理解为什么 $translate 需要能够构建与您的文件完全相同的 url。所以如果你开始:
prefix: 'i18n/local-',
suffix: '.json'
en 的 url 将是 il8n/local-en.json
。
如果你用正则表达式作为后缀,他如何构建完整的URL文件?就是做不到。
编辑:
OP 的目标是欺骗缓存:这是给出的解决方案:
前缀:'i18n/local-',
后缀:'.json?random='+generateRandomString()
在 AngularJS 翻译配置中,我们可以将 $translateProvider.useStaticFilesLoader 后缀 属性 作为正则表达式。
让我们说下面是一个示例配置:
$translateProvider.useSanitizeValueStrategy('sanitize');
$translateProvider.useStaticFilesLoader({
files: [{
prefix: 'i18n/local-',
suffix: '.json'
}]
});
$translateProvider
.preferredLanguage("en");
改为后缀为'.json',是否可以将其设为
$translateProvider.useSanitizeValueStrategy('sanitize');
$translateProvider.useStaticFilesLoader({
files: [{
prefix: 'i18n/local-',
suffix: '-[0-9a-f]{8,10}-?.json'
}]
});
$translateProvider
.preferredLanguage("en");
谢谢。
不,这很容易理解为什么 $translate 需要能够构建与您的文件完全相同的 url。所以如果你开始:
prefix: 'i18n/local-',
suffix: '.json'
en 的 url 将是 il8n/local-en.json
。
如果你用正则表达式作为后缀,他如何构建完整的URL文件?就是做不到。
编辑:
OP 的目标是欺骗缓存:这是给出的解决方案:
前缀:'i18n/local-', 后缀:'.json?random='+generateRandomString()