Javascript requirejs:从web服务加载脚本/模块
我有一个查询SQL数据库的Web服务。在sql表中,我存储了一些javascript,并希望使用RequireJS在网页中使用它 我试试这个:Javascript requirejs:从web服务加载脚本/模块,javascript,web-services,rest,requirejs,breeze,Javascript,Web Services,Rest,Requirejs,Breeze,我有一个查询SQL数据库的Web服务。在sql表中,我存储了一些javascript,并希望使用RequireJS在网页中使用它 我试试这个: var url = "http://localhost:64952/breeze/app/Objectss?$filter=Id%20eq%201&$select=Script"; require([url], (test) => { debugger arguments[0]; }); 服务器正确响应: 但我不确定
var url = "http://localhost:64952/breeze/app/Objectss?$filter=Id%20eq%201&$select=Script";
require([url], (test) => {
debugger
arguments[0];
});
服务器正确响应:
但我不确定RequireJS是否能够像这样加载脚本
我试着做点别的:
var req = breeze.EntityQuery.from("Commands")
.where("Id", "eq", "1")
.select("Script");
dataservice.manager.executeQuery(req)
.then((res : breeze.QueryResult) => {
if (res.results[0]) {
require([(<any>res.results[0]).Script], (hekki) => {
debugger
});
}
});
var req=breeze.EntityQuery.from(“命令”)
其中(“Id”、“eq”、“1”)
.选择(“脚本”);
dataservice.manager.executeQuery(请求)
.然后((res:breeze.QueryResult)=>{
如果(结果[0]){
需要([(res.results[0]).Script],(hekki)=>{
调试器
});
}
});
不太管用…你有什么办法帮我吗 创建一个负责通过您组合的breeze api加载依赖项 breezeloader.js:
define({
load: function (name, req, onload, config) {
// load the script using the breeze api you've put together...
var query = breeze.EntityQuery
.from("Commands")
.where("Id", "eq", name)
.select("Script");
dataservice.manager.executeQuery(query)
.then((queryResult: breeze.QueryResult) => {
var text = queryResult.results[0].Script;
// Have RequireJS execute the JavaScript within
//the correct environment/context, and trigger the load
//call for this resource.
onload.fromText(text);
});
}
});
使用requirejs插件语法表示应随breeze loader加载的依赖项:
require(['breezeloader!1', 'jquery', 'foo'], function (hekki, jquery, foo) {
...
});
你的问题不清楚。对于第一个示例,您说服务器响应正确,但不确定RequireJS是否“能够加载这样的脚本”。为什么不确定?您有一个
调试器语句。它没有被击中吗?(同样,“like this”中的“this”指的是上一个例子还是下一个例子。)对于第二个例子,你说“not work too”。说它不起作用也表明第一个例子实际上不起作用。此外,如果它不起作用,那么它怎么会不起作用呢?错误消息?调试器
语句未命中?你期望发生的事情没有发生?谢谢你的回答!在这两个示例中,调试器被命中。。。但我无法调用脚本,需要加载。我认为require无法通过调用rest URL来加载脚本,因为当我将URL放在“我正在休息”这样的软件中时,响应是一个包含Id、类型和属性脚本的对象。考虑到这一点,我在load函数的requirejs中设置了一个断点,试图了解require在将Ind作为URL加载时会做什么。load函数是将脚本节点添加到文档头的位置。当我查看这个脚本节点时,在第一种情况下,textContent、text、innerHTML或outerHTML是空的,我看不到我的脚本。在第二个示例中,当我查看这个节点时,我可以在src属性中看到我的脚本。。。我认为在这种情况下,这是因为需要尝试使用包含脚本的变量,如url或源路径…非常感谢!!!!!我有一些问题,使其工作,但这个解决方案正是我想要的!