[Client] Fix bug

This commit is contained in:
syuilo 2017-10-25 20:29:14 +09:00
parent e581ce3014
commit 4cac6316f7

View file

@ -4,14 +4,8 @@
const StringReplacePlugin = require('string-replace-webpack-plugin'); const StringReplacePlugin = require('string-replace-webpack-plugin');
export default (lang, locale) => ({ export default (lang, locale) => {
enforce: 'pre', function get(key: string) {
test: /\.(tag|js)$/,
exclude: /node_modules/,
loader: StringReplacePlugin.replace({
replacements: [
{
pattern: /%i18n:(.+?)%/g, replacement: (_, key) => {
let text = locale; let text = locale;
// Check the key existance // Check the key existance
@ -28,10 +22,28 @@ export default (lang, locale) => ({
console.warn(`key '${key}' not found in '${lang}'`); console.warn(`key '${key}' not found in '${lang}'`);
return key; // Fallback return key; // Fallback
} else { } else {
return text.replace(/'/g, '\\\'').replace(/"/g, '\\"'); return text;
} }
} }
return {
enforce: 'pre',
test: /\.(tag|js)$/,
exclude: /node_modules/,
loader: StringReplacePlugin.replace({
replacements: [{
pattern: /"%i18n:(.+?)%"/g, replacement: (_, key) => {
return '"' + get(key).replace(/"/g, '\\"') + '"';
} }
] }, {
pattern: /'%i18n:(.+?)%'/g, replacement: (_, key) => {
return '\'' + get(key).replace(/'/g, '\\\'') + '\'';
}
}, {
pattern: /%i18n:(.+?)%/g, replacement: (_, key) => {
return get(key);
}
}]
}) })
}); };
};