0

我用 Angular 编写了一个简单的应用程序,我将 json 数据直接编码到$scope控制器中,然后我用这些数据做一些事情。我可以拥有像 data.json 这样的东西,并将其与 js 和 css 文件一起发送到客户端,然后可以读取哪个 Angular?我该怎么做呢?不允许使用 Ajax。

4

2 回答 2

0

如果不允许 AJAX,您必须将文件设为 javascript 文件,而不是 JSON 文件。通过这样做,您会得到与 JSONP(带填充的 JSON)非常相似的东西。在此,您实质上将 JSON 对象传递给回调函数。例如:

myCallback({"foo":"bar", "bing":1900});

然后,您可以将此文件作为脚本标记包含在内,您的回调将使用适当的数据触发。确保在定义回调函数的脚本标记之后包含数据的脚本标记。

另一种选择是将对象存储为全局变量。通常认为污染全局范围是不好的。

于 2014-09-10T22:06:19.577 回答
0

本地访问

仅对于本地访问,您可以使用文件 URI(可能取决于使用的工具):

file:///home/user/project/file.js

代替

http://somewhere.net/project/file.js

...

分享页面

您必须使用服务器才能将文件提供给浏览器(客户端)。

为此,较轻的原型方法是使用诸如netcat之类的工具:

nc -l -p 8080 -q 0 < <(
    echo $'HTTP/1.1 200 OK\r\nContent-type: application/javascript\r\n\r';
    cat file.js)

即使在一个while true;do ... ;done循环中。

您可以使用更具特色的原型工具,如Mojolicious或最终服务器,如lighttpdnginxApache或其他。

于 2014-09-10T22:42:08.677 回答