问题标签 [factories]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
157 浏览

javascript - 意思是 JS 堆栈,创建一个处理两个不同路径的工厂

我正在使用 MEAN JS 框架以及它附带的几乎所有东西。但是,当用户转到特定路径(url)时,我正在尝试添加自定义查询。这是 MEAN JS 附带的代码:(在模块/文章/客户端/服务中)

这会处理控制器中定义的所有功能,它们是:create, update, find, findOne, remove. 现在我正在尝试 $scope.findByCategory = function (category) {...}在控制器中添加另一个功能。但是为了让它与服务器通信,我需要添加服务的路径。

我怎么做?如何编辑我的服务(或工厂),以便它处理我在控制器中定义的所有功能。(我已经在服务器端设置了路由。)换句话说,我想在我的客户端服务中将上面的代码和下面的代码组合成一个片段。注意:唯一改变的是路径。

0 投票
1 回答
31 浏览

javascript - 工厂服务返回对象

工厂中返回的 obj 值如何访问局部变量或函数。假设我想将我的模型封装为工厂或服务中的局部变量或函数,但我想将它们作为返回对象的值返回。但是当我这样做时,我收到一个错误,说该变量未定义。任何人都可以帮助我解决这个问题。

给出错误

0 投票
2 回答
3105 浏览

php - 在 Laravel 5.2 中更改工厂路径

我正在尝试将我的工厂目录更改为自定义路径,所以我正在使用它,就像我在laracasts 线程中看到的那样:

新路径有效,我在新目录中的工厂文件已加载。但是现在当我尝试使用播种机的工厂时,php artisan migrate:refresh --seed我得到了

[InvalidArgumentException] 未知格式化程序“名称”

来自工厂定义中的 $faker 实例:

所有格式化程序都会出现此错误,而不仅仅是名称。

哪里有问题?在我更改路径之前,工厂工作正常。

0 投票
1 回答
23 浏览

angularjs - Angular 提供者/工厂/指令,例如 $mdDiaog

Angular 允许您使用$mdDialogor<md-dialog>并且我想在我自己的应用程序中模仿它。就像我想创建一个服务或允许您为其设置值的东西。例如,

shareSheet.show({ items: [twitter, facebook, email], title: "Share Action", })

然后根据一些配置,我希望它显示底部工作表或 FAB 菜单。那么我应该用什么来做到这一点?我查看了如何实施$mdDialog$mdBottomSheet实施,这确实令人困惑。任何帮助都很棒!谢谢。

0 投票
1 回答
933 浏览

javascript - Ionic 中的多个服务 - 如何在一个文件中构建多个服务?

我有一个关于离子服务的问题。如您所知,Ionic 框架带有一个内置的 www 目录,其中包含 js 目录,其中包含 services.js 文件。我的第一个服务有效。我试图在同一个 services.js 文件中编写另一个服务,结果出现错误:Uncaught "SyntaxError: Unexpected token . http://localhost:8100/js/services.js行:57" 除了“(索引):28 未捕获的错误:[$injector:modulerr] 无法实例化模块启动器,原因是:错误:[$injector:modulerr] 无法实例化模块 starter.services,原因是:错误: [$injector:nomod] 模块“starter.services”不可用!您要么拼错了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。”无论如何,这是我的代码,请看一下,让我知道我可以做些什么不同的事情。另外,如果您需要更多片段,请告诉我!

编辑以获取更多信息:因此响应 David L 的评论:我已将其注入到我的 GlobalCtrl 中,如下所示:

它也将被注入到 DetailCtrl 中。在 app.js 中,服务是这样注入的:

最终还有很多事情要做,所以我想确保我现在做对了。

我是否正确包含了 starter.controllers?如果我有多个,我是否必须包括多个?它们确实包含在 index.html 文件中。

0 投票
0 回答
182 浏览

php - PHP 设计模式工厂

我们大量使用工厂模式,它在协调创建具有许多不同关系和参数的实体(模型)的情况下创建。伟大的!

虽然,我正在寻找一种类似的模式来更新同一个实体,有吗?

目前,我们更新Repositories了 Laravel 社区中的模型。虽然这对我来说是一种代码味道。存储库负责检索实体组,仅此而已......是否有一个术语/模式来涵盖这个创建者/工厂范式?

在开始之前减少那些 Laravel 的粉丝:是的,我们是一个足够大的应用程序来保证这些考虑。它已经到了我们需要将这个逻辑从我们的存储库中分离出来的地步......

0 投票
1 回答
150 浏览

javascript - AngularJS Web 应用程序在使用“返回”链接从 /pull/:pull_id 导航到 /pulls 时给出“TypeError: domNode is null”

如标题中所述,我在 Angular 扫描仪/结帐应用程序中遇到了一个描述不佳的错误。

当我直接加载 /pulls 页面时很好,没有控制台错误。然后我可以选择一个拉动并单击“查看”以加载 /pull/:pull_id 页面。再次,一切都很好。但是,当我单击“返回”到 /pulls 拉取列表的链接时,问题就出现了。

请参阅下面的代码示例,以及示例下方的控制台日志(包括我可爱的调试注释)。

我的 services.js 文件中有一个名为“pullsSvc”的工厂。

然后在我的controllers.js中我有

在我的 app.js 路由(ngRoute)中,相关位是

控制台日志

更新:更改<a href...><a ng-href...>没有任何区别。

angular.js 的第 12011 行是xhr.send(isUndefined(post) ? null : post); (v1.5.6)

Chrome 的错误日志稍微有点帮助..angular.js:10490 Uncaught TypeError: Cannot read property 'offsetWidth' of null

0 投票
0 回答
290 浏览

laravel-5 - 在 laravel 中测试一个使用相关模型的控制器方法

我在 laravel-lumen 工作。我有两个模型。一个组织模型和一个 APIkey 模型对应一个组织和一个 apikeys 表。apikeys 表中的organization_id 列是一个外键,引用了organizations 表的id 字段。

组织的模型看起来像

apikeys 模型看起来像这样

apikeys 中的organization_id 是organizations 表中的外键,它引用了organizations 表的id 字段。

现在我有一个控制器,它在给定组织 ID 和权限的情况下生成 api 密钥并填充 apikeys 表。看起来像这样

我想测试这段代码。我创建了两个这样的模型工厂。

我的测试功能是这样的。

控制器完美运行。只是在测试中我遇到了问题。url '/createapikeyfororg' 是调用控制器方法 generateApiKeyGivenOrganizationId() 的 url。这个测试程序正确吗?我还没有尝试过,我在星期六问这个问题,因为我真的很着急。我是一个测试新手,我很着急,任何帮助都将不胜感激。

0 投票
1 回答
152 浏览

asp.net-mvc - 为什么每次注入类型时都会调用注册了 InstancePerRequest 的 AutoFac 委托工厂

我正在使用 Delegate Factories 使用静态 .Create() 函数创建对象,因为对象的创建有些繁重并且不属于构造函数。这个对象(UserToken)用于每个 Mvc 控制器。

我在我的代码示例中注意到,在使用 AutoFac 委托函数注册以创建 UserToken 时,每个请求都会多次调用 UserToken.Create()。我希望它在每个请求中只被调用一次,并且生成的 UserToken 被构建器存储和重用。我在这里想念什么?我只希望 UserToken.Create 每个请求调用一次。

0 投票
0 回答
361 浏览

php - Laravel 中的工厂 / 设计模式技术

我对 Laravel 中的工厂有点困惑。

所有谈论的工厂都是创建虚拟对象的能力,因此您可以进行测试,或者只是快速为您的测试生成虚拟对象。

您通常使用Fakerhelper 来获取随机数据。

现在,我有另一个需要工厂的常见用例,它是对象创建。

因此,例如,在TreeController@store中,我有一个静态方法来创建/更新设置:

我想我会使用工厂来管理对象创建,但我不能,因为我已经将它们用于虚拟内容。

此外,我可以在我的工厂中使用不同的案例,但它开始增加我认为可以避免的复杂性。

然后,我可以使用现有的工厂,但如果我不指定属性,它会生成一个随机的,所以我需要在创建之前将所有未使用的属性设置为 null ...

嗯,我有点困惑我应该如何管理我的工厂......