【问题标题】:how to show json response data in angularJs?如何在angularJs中显示json响应数据?
【发布时间】:2017-05-06 10:45:10
【问题描述】:

我正在尝试通过 laravel 的 get_meta_tags 获取 url 信息,并希望在我的 angularjs 应用程序中显示。 但问题是响应返回

Array
(
    [title] => Mercy Badshah Full HD
    [description] => mercy badsah
    [keywords] => mercy, badshah new song, badshah songs, badshah, badshah mercy
    [theme-color] => #e62117
    [twitter:card] => player
    [twitter:site] => @youtube
    [twitter:url] => https://www.youtube.com/watch?v=QyoXZ2YgnME
    [twitter:title] => Mercy Badshah Full HD
    [twitter:description] => mercy badsah
    [twitter:image] => https://i.ytimg.com/vi/QyoXZ2YgnME/maxresdefault.jpg
    [twitter:app:name:iphone] => YouTube
    [twitter:app:id:iphone] => 544007664
    [twitter:app:name:ipad] => YouTube
    [twitter:app:id:ipad] => 544007664
    [twitter:app:url:iphone] => vnd.youtube://www.youtube.com/watch?v=QyoXZ2YgnME&feature=applinks
    [twitter:app:url:ipad] => vnd.youtube://www.youtube.com/watch?v=QyoXZ2YgnME&feature=applinks
    [twitter:app:name:googleplay] => YouTube
    [twitter:app:id:googleplay] => com.google.android.youtube
    [twitter:app:url:googleplay] => https://www.youtube.com/watch?v=QyoXZ2YgnME
    [twitter:player] => https://www.youtube.com/embed/QyoXZ2YgnME
    [twitter:player:width] => 1280
    [twitter:player:height] => 720
    [attribution] => SonyBMG
)

这种格式。 数据仅显示标题、描述、关键字和主题颜色。当我输入{{urlDetails.twitter:image}}等其他参数时显示错误

语法错误:标记 ':' 是第 19 列的意外标记 表达式 [urlDetails.twitter:image!=''] 从 [:image!=] 开始。 请帮我解决这个错误。提前致谢。

【问题讨论】:

    标签: angularjs json angularjs-scope


    【解决方案1】:

    如果您的对象具有非字母数字或非下划线字符的属性,例如属性"twitter:image",那么您需要使用方括号表示法来访问它:

    {{urlDetails['twitter:image']}}
    

    经验法则:如果您的属性是一个文字值,也可能是一个有效的变量名,请使用点表示法;否则,使用方括号表示法。

    【讨论】:

      【解决方案2】:

      您在问题中提供的数据表示是数组。所以通过数组下标获取数据。如果数组名称是 urlDetails 则通过 urlDetails['twitter:image'] 检索数据。

      【讨论】:

      • 次要澄清:OP 的 sn-p 可能来自 PHP(特别是 print_r 的输出),因此数据可能在 PHP 端被视为“数组”,但这仅仅是因为 PHP将该术语用于其键值数据结构。当它到达客户端并且 JSON 已被解析时,从 JavaScript 的角度来看,将其称为对象更为准确。
      • @tavnab 好的,我明白了
      猜你喜欢
      • 1970-01-01
      • 2018-04-02
      • 1970-01-01
      • 1970-01-01
      • 2014-04-07
      • 2018-04-02
      • 2016-03-30
      • 1970-01-01
      • 2016-05-19
      相关资源
      最近更新 更多