根据一本书的例子,我有我的.js文件
func getColourFromPoint(point:CGPoint) -> UIColor {
let colorSpace:CGColorSpace = CGColorSpaceCreateDeviceRGB()!
let bitmapInfo = CGBitmapInfo(rawValue: CGImageAlphaInfo.PremultipliedLast.rawValue)
var pixelData:[UInt8] = [0, 0, 0, 0]
let context = CGBitmapContextCreate(&pixelData, 1, 1, 8, 4, colorSpace, bitmapInfo)
CGContextTranslateCTM(context, -point.x, -point.y);
self.layer.renderInContext(context)
var red:CGFloat = CGFloat(pixelData[0])/CGFloat(255.0)
var green:CGFloat = CGFloat(pixelData[1])/CGFloat(255.0)
var blue:CGFloat = CGFloat(pixelData[2])/CGFloat(255.0)
var alpha:CGFloat = CGFloat(pixelData[3])/CGFloat(255.0)
var color:UIColor = UIColor(red: red, green: green, blue: blue, alpha: alpha)
return color
}
并在我的html文件中:
lists = new Mongo.Collection("Lists");
if (Meteor.isClient) {
Template.categories.helpers ({
'Category': function(){
return lists.find({}, {sort: {Category: 1}});
}})
我已将此数据输入到列表中,这些列表使用控制台对字段使用Category:
<body>
<div id="categories-container">
{{> categories}}
</div>
</body>
<template name="categories">
<div class="title">my stuff</div>
{{#each lists}}
<div>
{{Category}}
</div>
{{/each}}
</template>
但它没有输出数据。
答案 0 :(得分:0)
我认为问题出在您的{{#each}}的上下文中,您似乎试图通过辅助函数访问mongo集合本身而非特定字段。 查看有关空格键的本教程,这是一篇非常好的阅读http://meteorcapture.com/spacebars/以及Meteor Docs部分http://docs.meteor.com/#/full/livehtmltemplates。我自己对Meteor相当新,但希望有所帮助。
答案 1 :(得分:0)
在您的示例中,您使用名称类别来表示两种不同的事物
模板助手功能的名称会返回列表项的数组。
它是列表中字段项的名称。
{{#each Category}}
是否在帮助返回的数组上运行
在each
内,您应该访问{{Category}}
或{{item}}
列表项目
答案 2 :(得分:0)
您只需致电助手lists
而不是Category
,您的代码即可使用:
Template.categories.helpers({
lists: function () {
return lists.find({}, {sort: {Category: 1}});
}
});
{{#each lists}}
表示:迭代集合游标(查找结果)或通过调用帮助程序lists
得到的数组。这里的命名有些令人困惑,因为lists
恰好也是你正在迭代的集合的名称。
在each
内部,上下文是lists
文档。每个文档都包含一个Category
字段,您要在div
内输出。
推荐阅读:
答案 3 :(得分:0)
检查运行命令:流星列表
给出了您使用的包列表
如果 autopublish 包不在您要发布的列表中,请在此处订阅您的数据的简单示例:
//in server
Meteor.publish('lists',function(){
return lists.find({}, {sort: {Category: 1}});
})
//in client
Meteor.subscribe('lists');
更多Deatails:publish subscription
答案 4 :(得分:0)
首先:你的'类别'助手中的功能不应该在引号之间(不确定是否可能会出现问题)。
第二:您使用{{#each}}
循环错误。
您正在调用“列表”集合,但您应该调用“类别”帮助程序。
<template name="categories">
<div class="title">my stuff</div>
{{#each Category}}
<div>
{{Category}}
</div>
{{/each}}
</template>
您的助手非常混乱,与您在#each
循环中调用的字段具有相同的名称。