任务没有正确设置变量?
Task not setting variables properly?
将变量传递给客户端时遇到一些问题。得到运行的任务是这样的:
def getmaps
$mapnames_current = []
url = 'http://s3-ap-northeast-1.amazonaws.com/splatoon-data.nintendo.net/stages_info.json'
resp = Net::HTTP.get_response(URI.parse(url))
buffer = resp.body
result = JSON.parse(buffer)
result.each do |gamemode|
gamemode['stages'].each do |stage|
$mapnames_current << $mapnames.key(stage['id'])
end
end
end
和 $mapnames_current
在这里被调用:
<div class="text-center">
<h2>Current Maps!</h2>
<h3>Turf War:</h3>
<h2>{{ $mapnames_current[0] }}</h2>
<h2>{{ $mapnames_current[1] }}</h2>
<h3>Ranked:</h3>
<h2>{{ $mapnames_current[2] }}</h2>
<h2>{{ $mapnames_current[3] }}</h2>
</div>
我不确定这里出了什么问题。 $mapnames_current
变量不应该在任何地方都可以访问吗?
全局变量未在客户端和服务器之间同步。任务在客户端和服务器之间唯一传递的是任务的 return 值。 (这应该是可以序列化为 json(或 json 中的日期类型)的东西)。
这里有一个很好的任务截屏视频:http://datamelon.io/blog/2015/creating-volt-task-objects.html
将变量传递给客户端时遇到一些问题。得到运行的任务是这样的:
def getmaps
$mapnames_current = []
url = 'http://s3-ap-northeast-1.amazonaws.com/splatoon-data.nintendo.net/stages_info.json'
resp = Net::HTTP.get_response(URI.parse(url))
buffer = resp.body
result = JSON.parse(buffer)
result.each do |gamemode|
gamemode['stages'].each do |stage|
$mapnames_current << $mapnames.key(stage['id'])
end
end
end
和 $mapnames_current
在这里被调用:
<div class="text-center">
<h2>Current Maps!</h2>
<h3>Turf War:</h3>
<h2>{{ $mapnames_current[0] }}</h2>
<h2>{{ $mapnames_current[1] }}</h2>
<h3>Ranked:</h3>
<h2>{{ $mapnames_current[2] }}</h2>
<h2>{{ $mapnames_current[3] }}</h2>
</div>
我不确定这里出了什么问题。 $mapnames_current
变量不应该在任何地方都可以访问吗?
全局变量未在客户端和服务器之间同步。任务在客户端和服务器之间唯一传递的是任务的 return 值。 (这应该是可以序列化为 json(或 json 中的日期类型)的东西)。
这里有一个很好的任务截屏视频:http://datamelon.io/blog/2015/creating-volt-task-objects.html