Angular js:ng-repeat,Json string

时间:2016-09-26 13:32:04

标签: angularjs json

我的HTML代码。

<div ng-repeat="text in collection">
   <h3>{{text.caption}}</h3>
</div>

我的json字符串。

$scope.collection= [{"caption": "HELLO CAPTION 1","content":"SomeContent"}];

即使只有一个键值对,我也必须在我的html代码中使用'ng-repeat'。是否必须使用ng-repeat来获取单个json字符串?

3 个答案:

答案 0 :(得分:1)

不需要,如果你在数组中只有一个对象就可以这样使用,

 <h3>{{collection[0].caption}}</h3>

<强> DEMO

答案 1 :(得分:1)

数组中有对象,因此您指定位置

09-26 20:31:41.777 27062-27062/ru.ex.mike.clickauto W/System: ClassLoader referenced unknown path: /data/app/ru.ex.mike.clickauto-1/lib/arm
09-26 20:31:41.785 27062-27062/ru.ex.mike.clickauto I/MultiDex: VM with version 2.1.0 has multidex support
09-26 20:31:41.785 27062-27062/ru.ex.mike.clickauto I/MultiDex: install
09-26 20:31:41.785 27062-27062/ru.ex.mike.clickauto I/MultiDex: VM has multidex support, MultiDex support library is disabled.
09-26 20:31:41.813 27062-27062/ru.ex.mike.clickauto D/FirebaseApp: com.google.firebase.auth.FirebaseAuth is not linked. Skipping initialization.
09-26 20:31:41.819 27062-27062/ru.ex.mike.clickauto D/FirebaseApp: com.google.firebase.crash.FirebaseCrash is not linked. Skipping initialization.
09-26 20:31:41.819 27062-27062/ru.ex.mike.clickauto D/FirebaseApp: com.google.android.gms.measurement.AppMeasurement is not linked. Skipping initialization.
09-26 20:31:41.819 27062-27062/ru.ex.mike.clickauto I/FirebaseInitProvider: FirebaseApp initialization successful
09-26 20:31:41.843 27062-27062/ru.ex.mike.clickauto W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
09-26 20:31:41.972 27062-27062/ru.ex.mike.clickauto I/zzai: Making Creator dynamically
09-26 20:31:42.049 27062-27062/ru.ex.mike.clickauto W/System: ClassLoader referenced unknown path: /data/user/0/com.google.android.gms/app_chimera/m/0000000a/n/armeabi-v7a
09-26 20:31:42.049 27062-27062/ru.ex.mike.clickauto W/System: ClassLoader referenced unknown path: /data/user/0/com.google.android.gms/app_chimera/m/0000000a/n/armeabi
09-26 20:31:42.123 27062-27062/ru.ex.mike.clickauto I/Google Maps Android API: Google Play services client version: 9683000
09-26 20:31:42.130 27062-27062/ru.ex.mike.clickauto I/Google Maps Android API: Google Play services package version: 9683438
09-26 20:31:42.338 27062-27062/ru.ex.mike.clickauto I/c: Token loaded from file. Expires in: 350346286 ms.
09-26 20:31:42.338 27062-27062/ru.ex.mike.clickauto I/c: Scheduling next attempt in 350046 seconds.
09-26 20:31:42.517 27062-27183/ru.ex.mike.clickauto D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true
09-26 20:31:42.545 27062-27116/ru.ex.mike.clickauto W/Binder: Caught a RuntimeException from the binder stub implementation.
                                                              java.lang.NullPointerException: Attempt to read from field 'android.view.HardwareRenderer android.view.View$AttachInfo.mHardwareRenderer' on a null object reference
                                                                  at android.view.WindowManagerGlobal.dumpGfxInfo(WindowManagerGlobal.java:504)
                                                                  at android.app.ActivityThread$ApplicationThread.dumpGfxInfo(ActivityThread.java:1104)
                                                                  at android.app.ApplicationThreadNative.onTransact(ApplicationThreadNative.java:560)
                                                                  at android.os.Binder.execTransact(Binder.java:453)
09-26 20:31:42.657 27062-27183/ru.ex.mike.clickauto I/Adreno-EGL: <qeglDrvAPI_eglInitialize:379>: QUALCOMM Build: 10/21/15, 369a2ea, I96aee987eb
09-26 20:31:42.660 27062-27183/ru.ex.mike.clickauto I/OpenGLRenderer: Initialized EGL, version 1.4
09-26 20:31:43.125 27062-27072/ru.ex.mike.clickauto W/art: Suspending all threads took: 6.136ms
09-26 20:31:43.142 27062-27072/ru.ex.mike.clickauto I/art: Background sticky concurrent mark sweep GC freed 15095(843KB) AllocSpace objects, 26(3MB) LOS objects, 0% free, 36MB/36MB, paused 14.746ms total 33.657ms
09-26 20:31:44.528 27062-27175/ru.ex.mike.clickauto W/DynamiteModule: Local module descriptor class for com.google.android.gms.googlecertificates not found.
09-26 20:31:44.578 27062-27175/ru.ex.mike.clickauto I/DynamiteModule: Considering local module com.google.android.gms.googlecertificates:0 and remote module com.google.android.gms.googlecertificates:1
09-26 20:31:44.578 27062-27175/ru.ex.mike.clickauto I/DynamiteModule: Selected remote version of com.google.android.gms.googlecertificates, version >= 1
09-26 20:31:44.586 27062-27072/ru.ex.mike.clickauto I/art: Background partial concurrent mark sweep GC freed 10469(440KB) AllocSpace objects, 14(15MB) LOS objects, 33% free, 31MB/47MB, paused 2.467ms total 106.170ms
09-26 20:31:44.588 27062-27175/ru.ex.mike.clickauto W/System: ClassLoader referenced unknown path: /data/user/0/com.google.android.gms/app_chimera/m/00000009/n/armeabi
09-26 20:31:44.599 27062-27175/ru.ex.mike.clickauto D/GoogleCertificates: com.google.android.gms.googlecertificates module is loaded
09-26 20:31:44.679 27062-27175/ru.ex.mike.clickauto D/GoogleCertificatesImpl: Fetched 172 Google release certificates
09-26 20:31:44.687 27062-27175/ru.ex.mike.clickauto D/GoogleCertificatesImpl: Fetched 336 Google certificates

(或)

{{text[0].caption}} {{text[0].content}}

答案 2 :(得分:1)

阵列是否会在应用程序的生命周期中增长?如果是,你应该考虑保持ng-repeat不变,

否则获取数组的第一个元素并提取您需要的字段

<h3>{{collection[0].caption}}</h3>