您好,我正在观看几个angular.js视频,并看到value()方法用于设置一种模块范围的常量.例如,可以像这样设置Angular-UI库的配置:(coffeescript)
angular.module('app',[])
.value "ui.config",
tinymce:
theme: 'simple'
width: '500'
height: '300'
Run Code Online (Sandbox Code Playgroud)
我的应用程序目前看起来像这样:
window.app = angular.module("app", [ 'ui'])
.config(["$routeProvider", ($routeProvider) ->
$routeProvider
.when "/users",
templateUrl: "assets/templates/users/index.html"
controller: IndexUsersCtrl
.otherwise redirectTo: "/users"
])
.value 'csrf', $('meta[name="csrf-token"]').attr('content') #<---- attention here
IndexUsersCtrl = ($scope) ->
$scope.users = gon.rabl
console.log "I want to log the csrf value here" #<---- then attention
IndexUsersCtrl.$inject = ['$scope']
Run Code Online (Sandbox Code Playgroud)
但是我似乎无法通过点击与app模块相对应的'app'变量来获得该值.
我在这里读到了ST和在angularjs的google小组上,通过服务共享公共代码btwn控制器的一种方式,这个概念也适用于此吗?
谢谢!
在构建每个页面依赖于许多数据源的Web应用程序时,获取初始数据位的最佳方法是什么?当我查看twitter时,我看到页面加载时可见的推文在HTML源代码中,当您向下滚动时,使用AJAX会加载更多推文.但是没有方便的方法来获取已经插入到模型中的DOM中的数据.
在页面加载后立即发出初始数据请求愚蠢,因为你刚刚向服务器进行了大量往返以获取css,html和javascript.将数据插入页面上的javascript标记是不是一个坏主意,所以javascript函数可以添加初始数据?
我特意要求angularjs,但如果有一般技术,请告诉我.
我正在考虑尝试从HTML中的数据初始化(部分)AngularJS模型,而不是向服务器请求将数据作为JSON获取,或者直接在页面中嵌入JSON对象.
(服务器目前只使用HTML(而不是JSON)呈现数据,我现在想避免重写"太多"代码,而且HTML适用于搜索引擎.应用程序本身就是一个讨论系统.)
下面是我的HTML(简化)示例.其中嵌入的数据是帖子ID(123456),作者ID(789),作者姓名(Kitty霸主)和文本消息("Kittens Cats!Just kidding. ").
<div id="post-123456">
<div class="dw-p-hd">
By <span data-dw-u-id="789">Kitty overlord</span>
</div>
<div class="dw-p-bd">
<p>Kittens</p><p><strike>Cats! Just kidding.</strike></p>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我想构建一个AngularJS控制器,并初始化$scope为:
$scope = {
postId = 123456,
authorId = 789,
text = 'Kittens ....',
}
Run Code Online (Sandbox Code Playgroud)
也许我可以ng-init像这样使用:
<div id="post-123456"
ng-controller="CommentCtrl"
ng-init="{ postId =..., authorId =..., text =... }"> <--- look here
<div class="dw-p-hd">
By <span data-dw-u-id="789">Kitty overlord</span>
</div>
<div class="dw-p-bd">
<p>Kittens...</p>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
但后来我会发送两次数据:一次进入ng-init,一次进入HTML.我想我宁愿ng-init以某种方式跳过这个属性.
无论如何你认为这是一个好的方法吗?
或者它不可能/不好,我应该做别的事情呢?
有没有办法避免两次包含数据?(在html和in中都有 …