如何使用 Ui5 设置 Karma
how to setup Karma with Ui5
我有一个关于 karma 和 ui5 的问题。
目前情况如下:
我使用 karma-openui5 并通过 bower 加载 ui5。 Karma-openui5 只是添加了一些 bootstrap 信息和核心文件本身:
files.unshift({pattern: ui5path, included: true, watched: false, served: true});
这导致这个头条目:
<script type="text/javascript" src="/base/bower_components/openui5-sap.ui.core/resources/sap-ui-core.js" crossorigin="anonymous"></script>
Ui5 旨在加载与核心文件相关的所有其他内容,但由 sap 在不同的 bower 包中提供服务,这意味着,请求是:
http://localhost:9876/base/bower_components/openui5-sap.ui.core/resources/sap/m/library-preload.js
但它实际上位于
之下
http://localhost:9876/base/bower_components/openui5-sap.m/resources/sap/m/library-preload.js
我可以通过代理条目来解决这个问题。但我不能包含 .css 文件,这些文件位于单独的 bower 包中。我看不到仅将 */**/.css 请求代理到另一个目录的方法。所以这种方式就是行不通。
Openui5 已经有一些中间件 (connect-openui5) 来解决这个问题,并在 localhost 下按预期服务所有内容:XXXX/resources/.
我如何以及可以在 karma 中添加自定义脚本标签?喜欢:
<script type="text/javascript" src="resources/sap-ui-core.js"></script>
我如何添加中间件 (connect-openui5) 来处理对 /resources/**/* 的所有请求?
解决方案是使用 sap 的 connect 中间件,从 grunt 和代理开始。
如果有人对设置感兴趣,我把所有东西都打包在一个 yeoman 生成器中。
我有一个关于 karma 和 ui5 的问题。 目前情况如下:
我使用 karma-openui5 并通过 bower 加载 ui5。 Karma-openui5 只是添加了一些 bootstrap 信息和核心文件本身:
files.unshift({pattern: ui5path, included: true, watched: false, served: true});
这导致这个头条目:
<script type="text/javascript" src="/base/bower_components/openui5-sap.ui.core/resources/sap-ui-core.js" crossorigin="anonymous"></script>
Ui5 旨在加载与核心文件相关的所有其他内容,但由 sap 在不同的 bower 包中提供服务,这意味着,请求是:
http://localhost:9876/base/bower_components/openui5-sap.ui.core/resources/sap/m/library-preload.js
但它实际上位于
之下http://localhost:9876/base/bower_components/openui5-sap.m/resources/sap/m/library-preload.js
我可以通过代理条目来解决这个问题。但我不能包含 .css 文件,这些文件位于单独的 bower 包中。我看不到仅将 */**/.css 请求代理到另一个目录的方法。所以这种方式就是行不通。
Openui5 已经有一些中间件 (connect-openui5) 来解决这个问题,并在 localhost 下按预期服务所有内容:XXXX/resources/.
我如何以及可以在 karma 中添加自定义脚本标签?喜欢:
<script type="text/javascript" src="resources/sap-ui-core.js"></script>
我如何添加中间件 (connect-openui5) 来处理对 /resources/**/* 的所有请求?
解决方案是使用 sap 的 connect 中间件,从 grunt 和代理开始。
如果有人对设置感兴趣,我把所有东西都打包在一个 yeoman 生成器中。