0

所以我整天都在试图解决这个问题,也许我只是忽略了一些非常简单的事情。这是我的问题:我有一个很好的 Nodejs/AngularJS 应用程序设置,它使用 Jade 进行模板。我在服务器上做了一些事情,最终得到了一些由 Angular 在 Jade 模板中呈现的值。我有一些需要在该视图中运行的 javascript,它需要传入的那些值。但是,当我测试它时,该 javascript 永远不会运行(即使它确实运行了,我也不确定我传入的那些值是否会可用于我的内联 javascript!)

这是我正在尝试做的一个小例子(翡翠部分):

script.
    //Passed in from server
    var thing = {{data.thing}}; 
    var anotherThing = {{data.anotherThing}};

    function doSomething(a, b) {};

    doSomething(thing, anotherThing);
4

2 回答 2

0

所以我想我可以用 AngularJS 指令做我想做的事情。

但是,javascript 没有执行的原因是因为 AngularJS(基于 jqlite)没有将 < script> 标签视为特殊的 - 所以解决方案是在 AngularJS 之前包含完整版本的 jQuery(source)。

于 2013-08-06T17:13:59.547 回答
0

我不完全确定,但我认为您应该尝试以下方法:

script.
    //Passed in from server
    var thing = "#{data.thing}"; 
    var anotherThing = "#{data.anotherThing}";

    function doSomething(a, b) {};

    doSomething(thing, anotherThing);

这在新的翡翠页面上并不清楚。他们在他们的 github 页面上有一个更具体的旧 doku(你可以在 webarchive 上找到它,虽然这很丑)

希望有帮助!

编辑:这里是 github 上的旧版本。这个涵盖了更多的东西。

于 2013-08-06T06:40:22.027 回答