gpt4 book ai didi

javascript - AngularJS 中的代码分离

转载 作者:行者123 更新时间:2023-11-29 21:51:17 25 4
gpt4 key购买 nike

我是 AngularJS 的新手,所以在阅读这个问题时请牢记这一点......

我有一些功能我想在我网站的不同模块中全局使用,计划是让页面以单页应用程序样式执行自己的功能(因此用户列表/创建/修改将是一页,产品列表/创建/修改将是另一个)。我想要一些共享逻辑,比如实用函数,以及可以在不同页面模块之间共享的用户授权。

这引出了我的问题。

假设我将所有帐户功能都封装在一个服务中(例如 app.factory('account, etc etc...'))并分离到它自己的 JS 文件中,将它放在它自己的模块中是否更好并像这样使用依赖注入(inject):

var accountMod = angular.module('accountModule', ['dependencies']);
accountMod.factory('account', ['dependencies', function (...) { }]);

或者只是假设 app 变量的名称将始终是 app 并像这样表达它:

app.factory('account', ['dependencies', function (...) { }]);

在功能上这两种方法都有效,但我正在尝试使用最佳实践。第二种选择似乎有局限性,我从来不热衷于假设变量自始至终都是同名的,对我来说,依赖注入(inject)方法似乎更好,但我已经看到了很多这两种风格的例子!

非常感谢任何帮助!

最佳答案

真是个好问题。这其中有微妙之处。我认为使用以下使用模块的代码会有所帮助。

var accountMod = angular.module('accountModule', ['dependencies']);
accountMod.factory('account', ['dependencies', function (...) { }]);
  1. 然而,在 Angular 提供者的帮助下并添加模块级配置,我们可以模拟对象或服务。最终这将增加代码的测试能力。
  2. 如果会计下有多个服务,那么我更愿意将它们分组在模块内。

这些是我看待它的方面。如果找到请补充。

谢谢。

关于javascript - AngularJS 中的代码分离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29030173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com