问题标签 [systemjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
6945 浏览

javascript - System JS 一次调用加载多个依赖

查看systemjs的文档,我找不到同时加载多个依赖项的示例。我希望有一个类似于...的api

我希望它使用 Promise 并行加载所有依赖项,并在所有依赖项完成后执行回调。这可能吗?如果没有,是否有没有实现此功能的原因?

0 投票
4 回答
962 浏览

polymer - Web 组件、Polymer 和 SystemJS

Polymer 和/或原生 Web 组件是否使用 ES6 的 SystemJS 模块技术? https://github.com/systemjs/systemjs

还是他们依靠自己的资产管理?

0 投票
1 回答
3845 浏览

module - 在运行时使用同步语法导入 commonJS、AMD 和 ES6 模块

我最近写了很多 ES6,使用import {variable} from 'ES6module'语法,并使用traceur-compiler在浏览器中编译代码。我开始研究systemjs,因为它似乎允许我使用相同的语法来导入 AMD、commonJSES6 模块。

阅读文档已经开始让我感到困惑。我看到很多异步调用System.import('path/to/module').then(function(variable) { ... }),我不习惯用于依赖项导入。

我读过Practical workflows for ES6 modules,其中涵盖了许多不同的工作流程,其中没有一个涉及在运行时导入 ES6 模块AMD/commonjs 模块。我在想这样的事情:

或者,如果不是这样,至少:

systemjs可以实现这些吗?

0 投票
3 回答
6619 浏览

angularjs - 如何使 Typescript 与 SystemJS 和 Angular 一起使用成为可能?

我正在尝试使 SystemJS 与 Typescript 一起使用,但它们似乎相互冲突。

如何利用 System.js 的自动加载而不与 Typescript 上的关键字冲突?使用 import / require 使 Typescript 使用它自己的方式来加载和引用文件,虽然它翻译exportmodule.exports = ...,但它对import

是否有可能实现这一点,或者我将不得不等待 Typescript 支持 ES6 关键字?

0 投票
2 回答
638 浏览

ecmascript-6 - 在位置安装 SystemJs 插件

当我尝试使用导入文本文件时,import text from './some-text.txt!text';我看到加载程序尝试从服务器的根目录获取 text.js 文件。
这个位置可以不同吗?插件可以用jspm安装吗?

0 投票
0 回答
531 浏览

javascript - 在 Browserify/6to5ify 中创建一个可由 SystemJS 使用的模块

我有四个 ES6 模块和一个暴露来自其他四个模块的数据的模块,如下所示:

我的目标是拥有一个可以通过 systemjs api 使用的 JavaScript 模块文件:

递归计算和连接依赖关系的最佳方式似乎是通过 browserify,而从 ES6 编译到 ES5 的最佳方式是 6to5。所以,我查看了 6to5ify 节点模块。我复制并粘贴了示例中的代码:

最后,我将 game.js 加载到另一个 ES6 Web 项目中。但是,此时我收到错误,systemjs 模块加载器开始寻找 game.js 模块的依赖项,就好像它们是本地依赖项一样:

GET http://localhost:9000/client/board.js 404(未找到)es6-module-loader.src.js:2510

GET http://localhost:9000/client/card.js 404(未找到)es6-module-loader.src.js:2510

GET http://localhost:9000/client/game.js 404(未找到)es6-module-loader.src.js:2510

GET http://localhost:9000/client/player.js 404(未找到)es6-module-loader.src.js:2510

但是,我的构建文件的输出包括上面的模块,可以在这里找到。

由于问题可能出在browserify,使用6to5,systemjs加载模块的方式,或者它解析和读取构建文件内容的方式,我不确定在哪里看或问谁。

0 投票
2 回答
1076 浏览

javascript - Webstorm SystemJS导入解决错误

SystemJS 可以指定从导入的文件中呈现什么样的内容:

  • CSSSystem.import('my/file.css!')
  • 图片System.import('some/image.png!image')
  • JSONSystem.import('some/data.json!').then(function(json){})
  • 文本System.import('some/text.txt!text').then(function(text) {})

来源


使用 SystemJS,从附加类型的文件中导入,会在 Webstorm 中出现错误。
所以当我这样做时:

这意味着我需要纯文本格式的 html 文件,Webstorm 显示错误消息:

无法解析文件 '404.template.html!text'

在我的所有项目文件结构树中显示红色下划线。

我怎样才能让 Webstorm 只解决之前的部分!

0 投票
2 回答
285 浏览

javascript - SystemJS 从目录中导入“基本脚本”,就像在 Python 中一样

是否可以使用SystemJS从类似模块的目录中导入“基本脚本” ,例如 Python 的__init__.py

例子:

目录结构

模块1/__init__.js

引导程序.js

导入目录以导入基本脚本(__init__.jsmodule1.js)或其他东西:

这可能吗?__init__.py如果该目录中存在,Python 将目录作为模块导入

0 投票
1 回答
2835 浏览

knockout.js - 淘汰赛组件 - 自定义组件加载器

我正在使用 Knockout Components 和System.js进行模块加载。

我有一个自定义组件加载器:

但这失败并显示以下消息:

TypeError: undefined is not a function {stack: (...), message: "undefined is not a function"}

这就是我的 result.template 的样子:

这就是我的 result.createViewModel 的样子:

这是完整的错误:

0 投票
1 回答
5341 浏览

angularjs - 如何配置 karma 和 systemjs 以运行由 traceur 转译为 amd 格式 ES5 模块的 Angular ES6 测试

好吧,我的头撞在桌子上太久了,是时候寻求帮助了。也许我离基地很远,或者我只是看不到森林里的树木。请帮忙。

我正在尝试使用 gulp、Angular 1.3+、ES6、traceur、SystemJS、es_module_loader 和 http-server 构建应用程序。

到目前为止,该应用程序看起来不错,它可以从已编译的文件夹位置编译、运行和托管,但我无法让 Karma 在我的编译项目中运行单个测试。

这是我的项目结构:

使用 gulp 和 traceur 我能够将所有 es6 代码转换为带有 amd 包装器的 es5 模块。编译后的工件放置在构建文件夹中,如下所示:

编译后的布局与源布局不完全相同,但非常接近:

  • 供应商库位于lib文件夹中,来自 3 个不同的地方(npm、bower 和自定义下载)。
  • fonts和文件cssimg是从多个来源收集的 。
  • _build/js文件夹几乎与 相同client/src/app folder,除了index.html文件是上一级的。
  • html 模板文件 ( *.tpl) {some call these partials} 全部编译成 $templateCache 模块保存在_build/js/modules/common/templates/templates.module.js

然后我使用 http-server 提供它。index.html加载运行时基础架构,最后bootstrap.js加载/modules/.

这很好用。一切都按应有的方式加载和呈现。

现在我去测试它......因为我正在使用 SystemJs 加载所有依赖项(import在每个模块和后续 src 文件中使用标识)我需要使用karma-systemjs来帮助 karma 查找和加载那些相同的文件。
这是我的karma.config.js,存储在client/src/tests/karma/karma.config.js

在我构建应用程序并运行后,gulp karma我收到了这个非常有用的错误消息:

system.config.js文件是:

bootstrap.js文件是:

我已经黔驴技穷了。请帮我弄清楚如何从client/src文件夹中获取测试以在内存中编译并针对_build/js.