Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用limitTo缩短ng repeat变量_Javascript_Angularjs - Fatal编程技术网

Javascript 使用limitTo缩短ng repeat变量

Javascript 使用limitTo缩短ng repeat变量,javascript,angularjs,Javascript,Angularjs,在我的数据库中,我有这样的数据结构 "Projects":[{ "Year2016":[{"Name": "Project1"},{"Name": "Project2"}], "Year2017":[{"Name": "Project1"},{"Name": "Project2"}] }] 使用ng重复i开始 ng-repeat="year in Projects" <b>{{year | limitTo:4:6}}</b>

在我的数据库中,我有这样的数据结构

"Projects":[{
    "Year2016":[{"Name": "Project1"},{"Name": "Project2"}],
    "Year2017":[{"Name": "Project1"},{"Name": "Project2"}]
           }]
使用
ng重复
i开始

ng-repeat="year in Projects"
<b>{{year | limitTo:4:6}}</b>   
ng repeat=“项目中的年份”
{年份|限制:4:6}
我得到了整个
{“Year2016”:..}

如果我将查询响应作为字符串放在代码中,它将作为可疑的字符串工作,但是

由于某些原因,
limito
在新的
ng repeat
变量上不起作用


有可能吗?

开始索引的最后一个字段id,因此您的ng重复应该是

ng-repeat="year in Projects"
<b>{{year | limitTo:4:4}}</b>   
ng repeat=“项目中的年份”
{年份|限制:4:4}
您应该使用(键,值)语法
ng repeat
来循环使用键的json对象数组

请参考以下示例:

角度模块(“应用程序”,[]) .controller(“myCtrl”,函数($scope){ $scope.data={ “项目”:[{ “2016年”:[{ “名称”:“项目1” }, { “名称”:“项目2” }], “2017年”:[{ “名称”:“项目1” }, { “名称”:“项目2” }] }] }; });

{{key | limito:4:4}}
{{item.Name}

查询响应为{“Year2016”:[{“Name”:“Project1”}、{“Name”:“Project2”}]、“Year2017”:[{“Name”:“Project1”}、{“Name”:“Project2”},因此我需要删除前6个字符。但限制没有执行anything@Lukas你到底需要什么?2016年还是16年?我需要2016年,变量年包含{“Year2016”…在下一次重复中{“Year2017”…所以我需要删除前6个字符。问题是Limito对我的year变量不起作用。它不会删除我作为查询响应得到的Json中的任何内容。@Lukas Tilch你疯了还是想让我们生气?你需要2016,正如你所说的,所以你只需要转义4个字符“Y”、“E”、“a”、“R”“.你还需要逃避哪两个呢?@geminiousgoel我需要删除“{”,“Y”,“E”,“A”,“R”,但这不是问题所在。如果我写{{{“Year2016”{limito:4:6}”它工作得很好。但是如果我使用ng repeat中指定的year varaiable,它不会对varaible的内容做任何事情。这是一个非常好的主意,我认为这会起作用,但实际的查询响应是Projects:[0]:year2016:[0]:Projectname。我尝试了你的代码,得到key=0和value={“year2016”…遗憾的是{{value | limito:4:6}}仍然没有从{“Year2016”中删除任何内容…@LukasTilch很抱歉响应太晚。请注意,我还使用了一个外部ng repeat循环通过
项目
数组,然后使用内部ng repeat循环通过json对象数组。感谢您的响应,对于
{year}我无法理解它
它实际上打印出我想要的
{“Year2016”:等等
所以我需要的信息在
但是
limito:X:X
没有任何作用。它仍然显示
{“Year2016”:依此类推
@LukasTilch您可以复制/粘贴示例并更改变量名以查看。@LukasTilch limito不起作用的原因是它的目标是一个对象,而不是字符串或数组。要澄清“项目中的年份”包含曲线括号和qutaion标记,因为查询响应实际上是一个Json对象,所以将limitTo:4:4更改既不正确,也没有任何作用