我应该将 Angularjs 文件保存在 Web 应用程序中的什么位置以及应该如何构建我的路由和资源? [关闭]

2024-05-06

我正在使用 Laravel 构建一个 RESTful Web 服务,并使用 Angluarjs 在前端构建一个单页面应用程序。现在我应该把 Angularjs 文件放在哪里?我应该将它们放在 Laravel 安装的公共文件夹中,还是应该将它们完全分开,因为我将对 Web 服务中的资源发出调用,并且它将返回 JSON 数据,因此不需要将它们放在同一个地方。标准或最佳实践是什么?

现在,第二部分。如果我正在构建一个简单的 Todo 应用程序,我应该如何管理 Laravel 中的路线和资源。这是我真正感到困惑的地方,有点难以解释,但请听我一分钟。例如,我在 /users 处有一个用户资源,我可以通过在 /users 处发出 GET 请求来获取所有用户,或者通过在 /users 处发出 POST 请求来创建新用户。同样,我可以在 /users/1 发出 GET 请求并使用其他请求动词获取第一个用户等。现在,我有另一个称为任务的资源。我应该如何实施这个资源?我应该像嵌套资源那样实现它吗 /users/{user_id}/tasks.当我在 /users/1/tasks 发出 GET 请求时,它将获取第一个用户的所有任务。但现在它变得复杂了,因为如果在 /users/10/tasks/1 发出 GET 请求,它是否应该获取第 10 个用户的第一个任务。但是这样的逻辑的实现变得非常困难,因为我必须寻找第 10 个用户的第一个任务。

我想出了解决这个问题的方法,只在 /users/{user_id}/tasks 设置 GET 路由,这显然会返回指定用户的所有任务。然后我将创建一个完全不同的资源/任务来处理所有其他请求动词。我这样做对吗?

另外,如果我使用像 MongoDB 这样的 NoSQL 数据库,在这种情况下,数据将以 /users/{user_id}/tasks/{task_id} 的方式存储,因为每个用户的任务都不会很难实现将在他们自己的 JSON 对象中。

我的思考方向正确吗?我是新手,我不完全知道解决此类数据库架构问题的标准方法是什么?最佳实践是什么?


这是我的建议。

基本上,您需要将应用程序划分为模块。比如说登录、功能 1、功能 2 等。现在您应该为每个模块创建一个文件夹,您可以在其中保存与其相关的所有文件(controllers.js、services.js、index.html、style.css、filters.js 和 [name模块].js)通过这种方式,您可以分离所有代码,从而可以移动代码。

您可以将模块定义为:

(function () {
    'use strict';
    angular
        .module('myapp.login', [
            'myapp.login.controllers',
            'myapp.login.services'
        ]);
}());

你需要将其包含在 app.js 中,如下所示

angular
    .module('myapp', [ 'ngRoute',
    'ngResource',
    'myapp.login'
])

这样您就可以添加所有模块。

您想要包含的另一重要文件夹是公用文件夹。您可以在其中包含应用程序中可能拥有的所有可重用组件的模块。

为了进行测试,您可以有一个单独的测试文件夹,其中包含(e2e 和单元文件夹)。我一直在使用黄瓜进行测试并且我已经创建了features文件夹,我在其中为定义功能的每个模块创建文件夹。您也可以创建一个名为的文件夹steps每个模块可以有单独的 js 文件。

在它之上,您可以拥有配置文件,您可以在其中为所有 api 创建变量,以便您可以从一个地方控制它。

希望这可以帮助 :)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我应该将 Angularjs 文件保存在 Web 应用程序中的什么位置以及应该如何构建我的路由和资源? [关闭] 的相关文章

  • 如何在下拉列表中选择一个选项

    我正在使用 AngularJS 指令 我需要在模板中设置下拉列表的选定选项
  • AngularJS - 服务、工厂、过滤器等中的依赖注入

    因此 我想在我的 Angular 应用程序中使用一些插件和库 目前 我只是引用这些函数 方法 因为它们是在 99 的应用程序中以完全忽略依赖注入的方式使用的 我有 例如 javascript 库 MomentJS 它处理格式化和验证日期 并
  • 轻松的反应

    我有一个与这里描述的类似的案例 动态更改RESTEasy服务返回类型 https stackoverflow com questions 3786781 dynamically change resteasy service return
  • 瞬态 REST 表示

    假设我有一个 RESTful 超文本驱动的服务 用于模拟冰淇淋店 为了帮助更好地管理我的商店 我希望能够显示每日报告 列出所售每种冰淇淋的数量和美元价值 看来这种报告功能可以作为名为 DailyReport 的资源公开 DailyRepor
  • 如何在 ng-repeat 中使用 $index 来启用类并显示 DIV?

    我有一套 li 元素 ul li a href href ABC a li li a href href DEF a li li a href href A index a li ul li
  • 将占位符绑定到模型会导致 ng-change 在 IE 中加载时执行

    使用 angularjs 如果我将输入的占位符绑定到其模型 则当文档在 IE 中加载时会触发更改事件 这似乎不正确 我在其他浏览器中没有看到这种行为 JSFiddle http jsfiddle net VxBNW 6 Html div d
  • 只允许一种身份验证机制;只有 X-Amz-Algorithm 查询参数..?

    我正在尝试将 PUT 请求发送到 amazonS3 预签名 URL 即使我只有一个 PUT 请求 我的请求似乎也被调用了两次 第一个请求返回200 OK 第二个返回400 Bad Request 这是我的代码 var req method
  • console.log 未显示正确的值[重复]

    这个问题在这里已经有答案了 我正在尝试控制台一个对象 尽管它没有抛出任何错误 但我想要的结果在一段时间后显示 但我无法检索它 它显示一个 i 图标 上面写着 刚刚评估了下面的值 但我无法获取该值 OUTPUT Promise state s
  • AngularJS - RouteProvider 解析调用服务方法

    我创建了一项检查用户登录状态的服务 如果令牌存在 则登录用户 否则重定向到登录页面 最初我通过routeProvider解析调用了这个服务 这一次就可以完美工作 但是由于Angularjs服务是单例的 因此测试不会针对连续调用运行 然后 我
  • Angular js 服务器端过滤器和分页

    我有几个输入字段 我们可以使用带有搜索名称的输入字段作为示例 当有人在该字段中输入内容时 我希望能够过滤对象的结果 但我想做过滤器服务器端而不是客户端 我有一个包含大量记录的数据库 因此我不想返回所有记录并在客户端进行过滤 这确实会减慢速度
  • 使用 Spring 和 Angular 进行 Html5 路由

    我正在尝试使用 Spring boot 和 Angular 1 5 实现 HTML5 路由 如下本文 https spring io blog 2015 05 13 modularizing the client angular js an
  • 如何绕过 ASP.NET Web API 中发现多个操作的异常

    当试图找到以下问题的解决方案时 默认操作的 MVC Web Api 路由不起作用 https stackoverflow com questions 11724749 mvc web api route with default actio
  • AngularStrap 工具提示禁用我的自定义指令

    我正在尝试让 bs tooltip AngularStrap 指令与我自己的名为 checkStrength 的自定义指令一起使用 该指令检查密码的强度 单独使用这些指令中的任何一个时 它们都可以正常工作 但不能一起工作 This http
  • Web 服务应该是事务性的吗?

    我正在研究为应用程序编写网络服务 在此应用程序中 我们在事务中执行所有操作 因为 工作单元 通常不是单个实体 而是跨越多个表的多个实体 在某些情况下 我们想要 全有或全无 而交易是非常有意义的 然而 我不太确定如何在网络服务中执行此操作 也
  • Jasmine-jQuery loadFixtures 未定义

    我对整个茉莉花的事情仍然很陌生 在过去的几个小时里我陷入了这个问题 我尝试使用 loadFixture 加载外部夹具文件 我使用 Jasmine 2 0 0 和 Jasmine jQuery 2 0 5 ReferenceError loa
  • @RestController 没有 @ResponseBody 方法工作不正确

    我有以下控制器 RestController RequestMapping value base url public class MyController RequestMapping value child url method Req
  • 如何使用 $resource 获取状态代码?

    我提出请求的工厂在这里 angular module myapp factory testResponse http resource AppConfig routeParams rootScope function http resour
  • Spring RestTemplate 使用 cookie 遵循重定向

    最近我遇到了一个问题 我需要做一个GET请求远程服务 我假设使用一个简单的 servlet 并且 RestTemplate 返回Too many redirects 经过一番调查 似乎对指定远程服务发出的第一个请求实际上只是一个 302 重
  • Angular 模态对话框最佳实践

    与不具有动态内容的对话框相比 创建具有动态内容的模式对话框的最佳实践是什么 例如 我们有一些模式表单接受表单元素列表 并具有提交 取消功能 此外 还有一些模式对话框仅显示确认 确定类型的操作 我见过很多人说对话框应该是传递到控制器的服务 但
  • Ionic/Cordova 应用程序中的身份验证

    首先 我不是专业人士 在我成为一名更好的开发人员的过程中 我试图了解需要什么以及如何完成为 Ionic Framework 应用程序创建注册 登录 大多数单页应用程序 SPA 在节点服务器上处理身份验证 该服务器还为客户端提供 HTML 就

随机推荐