如何在javascript中编写以字符串形式返回脚本的函数
我正在使用angular,我想在指令的模板中附加一个脚本。我想通过编写一个函数来实现这一点,该函数接受脚本所需的参数,然后将其作为字符串返回。我希望这样做,这样我就不必编写长javascript文件作为字符串 我有以下指示: 指示 用如何在javascript中编写以字符串形式返回脚本的函数,javascript,angularjs,Javascript,Angularjs,我正在使用angular,我想在指令的模板中附加一个脚本。我想通过编写一个函数来实现这一点,该函数接受脚本所需的参数,然后将其作为字符串返回。我希望这样做,这样我就不必编写长javascript文件作为字符串 我有以下指示: 指示 用${,} $element.append(`<script>${render(rev)}</script>`); $element.append(`${render(rev)}`); ${render(rev)}顺便说一句渲染不会在您提供的
${
,}
$element.append(`<script>${render(rev)}</script>`);
$element.append(`${render(rev)}`);
${render(rev)}
顺便说一句<代码>渲染不会在您提供的代码段中返回脚本。它在执行IIFE时返回未定义的值。@KevinB这是我想学习的。我所做的是尝试从函数及其参数创建脚本。我该怎么做?我不确定。对我来说这似乎是个很糟糕的主意,为什么你不能。。。执行代码,而不是尝试将其注入到页面中,这只会简单地执行代码?我仍然得到rev未定义
。I console.logged rev在该行之前,并且rev具有您希望它具有的数据您可以创建一个plnkr来演示吗?注意render
返回undefined
,因为在render
函数中没有从iLife返回值。参数是否附加到#图表
元素中?预期的结果是什么?像这样的东西虽然在我这边$watch工作得很好,但在这个plunker中它并不熟悉angularjs
。什么是rev
?plnkr的代码与问题代码不同。rev
应该是异步函数调用的结果吗?rev是一个json对象,它可以是任何东西。在plunker中,我使用占位符数据
function render(params){
return (function(){
$('#chart').append('<p> params </p>');
})();
}
rev is not defined
$element.append(`<script>${render(rev)}</script>`);