To deploy Rob's answer on trying to connect to the i18n.js plugin for require.js, here are the steps I followed (I'm working on a Durandal starter template in Visual Studio).
- Download the i18n.js plugin and put it in a folder
App. App/nls, require.js, . App/nls/welcomeBundle.js.
define({
"root": {
"displayName": "Welcome to the Durandal Starter Project!"
},
"fr-fr": true
});
, , require.js, . App/nls/fr-fr/welcomeBundle.js, - ( le: D)
define({
"displayName": "Welcome to le Durandal Starter Project!"
});
require.js ( ). main.js getLocale() , locale require.js:
function getLocale() {
var locale = 'en-us';
if (localStorage) {
var storedLocale = localStorage.getItem('locale');
locale = storedLocale || locale;
}
return locale;
}
requirejs.config({
paths: {
'text': 'durandal/amd/text'
},
locale: getLocale()
});
welcome.js displayName:
define(function(require) {
var bundle = require('i18n!nls/welcomeBundle');
return {
displayName: bundle.displayName,
...
}
});
JavaScript:
localStorage.setItem('locale', 'fr-fr');
location.reload();
, :)
: 2013-04-04: , main.js, shell.js, - . , .