我有一个核心控制器
(function() {
"use strict";
function FieldSettingsOverlay($scope, localizationService, formService, userService) {
var vm = this;
vm.changeValidationType = changeValidationType;
vm.validationTypes = [{
"key": "number",
"pattern": "^[0-9]*$"
}, {
"key": "url",
"pattern": "https?\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,}"
}];
function changeValidationType(selectedValidationType) {
console.log("Parent")
}
}
angular.module("umbraco").controller("UmbracoForms.Overlays.FieldSettingsOverlay", FieldSettingsOverlay);
})();
从这个父控制器中,我有一个名为vm的数组。validationTypes,目前只有2个对象,但我必须添加3或4个对象。
所以我通过扩展核心控制器创建了另一个控制器
//自定义验证
angular.module("umbraco").controller('FromValidationCustomController', function ($scope, $controller) {
'use strict';
console.log("inistiate")
angular.extend(this, $controller('UmbracoForms.Overlays.FieldSettingsOverlay', {$scope: $scope}));
$scope.changeValidationType=function(){
console.log($scope.validationTypes)
}
})
新的扩展控制器使用了名为changeValidationType的同一个函数,它甚至没有将其作为唯一的父函数调用
知道我错过了什么吗?为什么控制器内部的函数不调用