我应该在关键字/产品聚合网站上使用angular吗?

时间:2015-11-03 02:16:55

标签: javascript json ajax angularjs

我正在开发一个网站,用户可以使用关键字搜索产品。其中一个主要功能是搜索和显示搜索结果。每个搜索结果(产品)都会点击详细信息页面(将在2周内删除+)

我做了什么

  1. 为网站开发了UI / Javascript。
  2. html / css中的所有产品组件均可重复使用
  3. 所以所有基本的东西都完成了。现在我也专注于AJAX和Angular,这取决于你的意见。

    我的合作伙伴正在Node中构建后端。他告诉我他将用JSON发送搜索结果,并且不得不使用AJAX来抓住它。到目前为止,我已经学会了如何将JSON对象存储在用户的localStorage(本地)中。

    现在我无法理解我将如何传输数据并在页面上显示一定数量的产品等。

    我有一些但不是细节。

    如果你能帮助我,我所缺乏的领域会很棒,谢谢。

1 个答案:

答案 0 :(得分:0)

Google列表:

  • ng-repeat遍历集合
  • Angular Directives创建可重用的DOM
  • ng-include如果您必须显示内联详细信息
  • ng-if确定上述功能(不是ng-show因为它在IE9中存在问题 - )
  • ui-router创建单独的详细信息"状态" (又名页面)
  • $state通过应用程序翻译
  • $stateParams确定要在详细信息页面上显示的id个产品

关于您将获得的AJAX和JSON响应:

{
    items: [{ id:0, ... }], //collection of products
    meta: {
       totalPagesCount: '100',
       totalItemsCount: '1000'
       itemsPerPage: '10',
       currentPage: '1', 
    }
}

Power that let you adapt to anything

Power that let you to find anything

显然你会创建两个指令和一个控制器:

  1. 项目指令
  2. 传呼指令
  3. 控制器用于处理输入的页面,该页面将使用关键字作为GET参数发送收集请求,并将更新的数据转换为指令
  4. 将使用反序列化(如果需要)执行业务逻辑为$http.get()的服务,存储信息(如果要缓存某些内容)等。
  5. 传递你的指令的ng-model适当的收集,分页等值将使你避免在控制器内部编写$watch和业务逻辑。

    让一切变得简单明了,paterned