我想包含两个库(jQuery,Highcharts)。我尝试将它们作为附加的-js添加到config.json文件中:
"additional-js" : {
"add-script" : [
{ "uri" : "script/jquery-3.1.0.min.js" },
{ "uri" : "script/highcharts.js" }
]
},
问题是,构建会更改includes的顺序。在构建之后,highcharts.js是第一个包含的。我如何管理序列?
发布于 2016-09-23 14:55:50
这是对你问题的直接回答:
我已经用一个新创建的应用程序对此进行了测试,config.json
中给出的序列被保留了下来。
首先,您必须将附加库的文件放在应用程序的正确路径(这里称为myapp)中
myapp/source/resource/scripts/jquery.js
myapp/source/resource/scripts/highcharts.js
然后在myapp/config.json
的job
部分添加folling条目
"jobs" :
{
"common" : {
"add-script" : [
{ "uri" : "resource/scripts/jquery.js" },
{ "uri" : "resource/scripts/highcharts.js" }
]
},
最后,在应用程序代码中的某处添加@asset(scripts/*)
编译器提示,例如在Application.js
中,如下所示
/**
* This is the main application class of your custom application "myapp"
*
* @asset(myapp/*)
* @asset(scripts/*)
*/
这样,应用程序加载程序首先加载源代码和构建版本中的jquery.js
,然后加载highcharts.js
。
请注意,qooxdoo加载器负责加载额外的库。您没有也不应该在index.html
中放置库的脚本标记!
发布于 2016-09-23 14:09:43
我知道这不是对你问题的直接回答。我从未通过config.json中的add-script配置参数使用过脚本。
我还使用qx.util.DynamicScriptLoader
(参见http://www.qooxdoo.org/devel/api/#qx.util.DynamicScriptLoader )在我的qooxdoo应用程序中集成了jquery和highcharts,它允许在实例初始化时加载外部库,同时严格保持给定的加载顺序。这也有一个好处,那就是只有在你的代码创建了一个包含highcharts小部件的对话框的情况下,才会按需加载库。
https://stackoverflow.com/questions/39641214
复制