с функциями бовера нпм справляетсяНаоборот, bower был такой форк npm чисто для фронта. Потом все перешли на npm + browserify.
И как я понял уже, то нужно как-то добавить эвент о смене локали (языка) и чтобы все части, которые мультиязычные - реагировали на него и подгружали язык?Для простоты можно просто перегружать всю страницу. Смена языка на лету — действие достаточно редкое, можно не заморачиваться особо-то.
Когда я учил java там можно было открыть библиотеку и увидеть все обо всем и это очень классно для понимания.Ну в принципе можно открыть исходники V8 и смотреть, как оно реализовано, но не советую. Лучше почитать спецификации, пожалуй.
window.onload = draw;
function draw() {
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext('2d');
var hills = new Image();
hills.src = 'http://7-themes.com/data_images/out/73/7022406-forest-background.jpg';
canvas.setAttribute('width', window.innerWidth);
canvas.setAttribute('height', window.innerHeight);
hills.onload = function () { // теперь, когда картинка загрузилась, можно и нарисовать
ctx.drawImage(hills, 0, 0, canvas.width, canvas.height);
}
}
// MyLib.js
export class Dedka {}
export class Repka extends Dedka {}
// клиентский код
import MyLib from './lib/MyLib';
const a = new MyLib.Dedka();
const c = new MyLib.Repka();
import {Dedka, Koshka as Zhoochka} from './lib/MyLib';
ни на грош. Сергей Протько абсолютно прав, все эти псевдо-«пространства имен» исключительно от отсутствия нормальной модульной системы.