Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
节点ejs动态javascript加载_Javascript_Node.js_Ejs_P5.js - Fatal编程技术网

节点ejs动态javascript加载

节点ejs动态javascript加载,javascript,node.js,ejs,p5.js,Javascript,Node.js,Ejs,P5.js,因此,我试图让routes文件传递页面需要包含的javascript文件列表,并让ejs构造包含这些脚本的头部 我的路线文件 router.get('/:name', function(req,res, next) { res.render('templates/experiment', { name:req.params.name, extraScripts:experiments[req.params.name].extraScripts }) }); 我的实验.e

因此,我试图让routes文件传递页面需要包含的javascript文件列表,并让ejs构造包含这些脚本的头部

我的路线文件

router.get('/:name', function(req,res, next) {
  res.render('templates/experiment', {
    name:req.params.name,
    extraScripts:experiments[req.params.name].extraScripts
  })
});
我的实验.ejs

<head>
  <title><%= name %></title>
  <script src="../javascripts/p5/p5.js"></script>
  <script src="../javascripts/p5/addons/p5.dom.js"></script>
  <script src="../javascripts/p5/addons/p5.sound.js"></script>
  <% for(var i = 0; i < extraScripts.length; i++) { %>
    <script scr=<%= "../javascripts/" + extraScripts[i]%> ></script>
  <% }%>
  <script src=<%= "../javascripts/experiments/"+name + "/sketch.js"%>></script>
  <style> body {padding: 0; margin: 0;} </style>
</head>

正文{填充:0;边距:0;}
现在,当我加载页面时,我可以很好地看到脚本标记,但它并没有实际加载额外的脚本

<head>
  <title>snake</title>
  <script src="../javascripts/p5/p5.js"></script>
  <script src="../javascripts/p5/addons/p5.dom.js"></script>
  <script src="../javascripts/p5/addons/p5.sound.js"></script>

  <script scr=../javascripts/library/colors.js ></script>

  <script src=../javascripts/experiments/snake/sketch.js></script>
  <style> body {padding: 0; margin: 0;} </style>
</head>

蛇
正文{填充:0;边距:0;}

该colors.js文件没有加载,我是否遗漏了什么,sketch.js是动态的,加载得很好。

您的代码中有一个输入错误 使用src代替scr

还尝试将src路径括在双引号内,如下所示

<head>
  <title><%= name %></title>
  <script src="../javascripts/p5/p5.js"></script>
  <script src="../javascripts/p5/addons/p5.dom.js"></script>
  <script src="../javascripts/p5/addons/p5.sound.js"></script>
  <% for(var i = 0; i < extraScripts.length; i++) { %>
    <script src="<%= "../javascripts/" + extraScripts[i]%>" ></script>
  <% }%>
  <script src="<%= "../javascripts/experiments/"+name + "/sketch.js"%>"></script>
  <style> body {padding: 0; margin: 0;} </style>
</head>

正文{填充:0;边距:0;}

wow通常当我输入这样的问题时,我会发现那些愚蠢的打字错误,谢谢