从 bower_components 加载 systemjs

Load systemjs from bower_components

我用 bower 安装了 systemjs。我在我的网站上成功加载了它,但是在 system-config.js 中,我得到错误 SystemJS is not defined。为什么?

 <script src="./bower_components/systemjs/build/system.min.js"></script>
 <script src="./scripts/system-config.js"></script>

SystemJS.config({
    transpiler: 'plugin-babel',
    map: {
        //system transpiler
        'plugin-babel': './bower_components/systemjs-plugin-babel/plugin-babel.js',
        'systemjs-babel-build': './bower_components/systemjs-plugin-babel/systemjs-babel-browser.js',

        //app scripts
        'main': './scripts/main.js',
        'requester': './scripts/requester.js',
        'templates': './scripts/templates.js',
        'data': './scripts/data.js',

        //controllers
        'home': '../controllers/home.js',
        'login-form': '../controllers/login-form.js',

        //js libraries
        'jquery': './bower_components/jquery/dist/jquery.js',
        'navigo': './bower_components/navigo/lib/navigo.min.js',
        'handlebars': './bower_components/handlebars/dist/handlebars.js',
    }
});

SystemJS.import('./scripts/main.js').then(x => console.log(x), x => console.log(x));

你可能犯了我在重现错误时犯的同样的错误。

您使用以下命令安装了 SystemJS:

bower install systemjs

这不是您要找的图书馆。

转到 https://bower.io/search/ 并搜索 systemjs。你会发现第一个包裹说

JavaScript对象与用户的系统信息。

真正的包名为 system.js 而不是 systemjs

解决方案

在安装命令中添加一个点。

bower install system.js