Angular Formly自定义类型控制器在部署时失败
Angular-Formly Custom Type Controller Fails on Deployment
我正在使用angular formly网站上给出的重复部分的示例。在我的app.config中,我正在创建一个新类型,如下所示:
var unique = 1;
formlyConfigProvider.setType({
name: 'repeatSection',
templateUrl: 'app/rawMaterial/repeatSection.html',
controller: function($scope) {
$scope.formOptions = {formState: $scope.formState};
$scope.addNew = addNew;
$scope.copyFields = copyFields;
function copyFields(fields) {
fields = angular.copy(fields);
addRandomIds(fields);
return fields;
}
function addNew() {
$scope.model[$scope.options.key] = $scope.model[$scope.options.key] || [];
var repeatsection = $scope.model[$scope.options.key];
var lastSection = repeatsection[repeatsection.length - 1];
var newsection = {};
if (lastSection) {
newsection = angular.copy(lastSection);
}
repeatsection.push(newsection);
}
function addRandomIds(fields) {
unique++;
angular.forEach(fields, function(field, index) {
if (field.fieldGroup) {
addRandomIds(field.fieldGroup);
return; // fieldGroups don't need an ID
}
if (field.templateOptions && field.templateOptions.fields) {
addRandomIds(field.templateOptions.fields);
}
field.id = field.id || (field.key + '_' + index + '_' + unique + getRandomInt(0, 9999));
});
}
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
}
});
在我的本地机器上一切都很好,但当我部署到Heroku时,我会收到以下错误:
Error: [$injector:unpr] Unknown provider: aProvider <- a
如果我从类型定义中删除controller:
部分,错误就会消失。保留controller:
定义,但注释掉其所有内容仍然会引发错误。
我使用的是有角度的全栈yeoman生成器和默认的Grunt任务。
如果您基于名为a
的预期服务抛出错误,这是AngularJS生态系统中缩小的影响。我怀疑缩小时$scope
正在转换为a
。要保留$scope
,请使用"最小安全"注入签名定义控制器。有多种方法可以做到这一点,但这里有一个常见的模式。请注意以下内容。。。
controller: ['$scope', function($scope) {
/* ... */
}])
JSFiddle链接-简单的演示再现错误
相关文章:
- 当json解析空响应时,Whatwg-Fetch失败,我该如何防止它
- JsFiddle在分叉后描述失败
- 使用CI和CodeDeploy对node.js应用程序进行连续部署
- 部署时使用npm包时发生Meteor错误
- 为什么不'当单元测试出现解析错误时,我的因果报应测试会失败
- 当一些承诺失败时,如何继续使用$q.all()
- 失败:等待Protractor与页面同步时出错:“”;在窗口上找不到角度”;
- 在Jquery中单击传播失败
- 网页上失败的javascript会导致所有其他脚本失败
- 带有对象解析的响应javascript ajax失败
- Dynamics 2016内部部署Crm客户端脚本.选项集控件类型缺少方法
- 使用Q节点模块时,Bluemix node.js应用程序部署失败
- 解析云代码部署失败,并显示消息“更新失败,出现内部错误”
- Angular Meteor应用程序在localhost中工作,但在部署到服务器时失败
- Angular Formly自定义类型控制器在部署时失败
- Meteor Up部署失败,但应用程序在开发中运行良好
- MUP将失败部署到在另一台服务器上工作的项目上
- 应急部署失败
- IBM Worklight适配器部署失败:Adapter 'BIIOwnAccountFundTransferA
- Angularjs的HTTP POST调用在部署中验证登录失败-返回400错误