簡體   English   中英

Angular Custom Directive .match不是函數

[英]Angular Custom Directive .match is not a function

我正在嘗試創建一個簡單的角度無線電組指令。 該組件將被傳遞一個字符串數組,一個id和一個將所選選項綁定到的屬性。 當我運行代碼時,出現以下錯誤

angular.js:13642TypeError:a.match不是函數

這是我所擁有的:app.js:

angular.module('atp', [])
.directive('appform', require('./application-directive'))
.directive('radioGroup', require('./radio-group/radio-group-directive'))
.directive('yesNoRadioGroup', require('./radio-group/yes-no-radio-group-directive'));

radio-group-directive.js:

function RadioGroupDirective(){
    return{
        restrict:'E',
        transclude:true,
        template:require('./radio-group-template.html'),
        replace:true,
        scope:{
            id:'=',
            selected:'=',
            options:'='
        }
     }
}
module.exports = RadioGroupDirective;

radio-group-template.html:

<div>
    <label for="{{radioGroupId}}"><ng-transclude></ng-transclude></label>
    <fieldset id="{{radioGroupId}}">
        <div ng-repeat="option in optionsArray track by $index">
            <label for="{{radioGroupId}}-{{$index}}">{{option}}</label>
            <input  id="{{radioGroupId}}-{{$index}}" type="radio" value="option" ng-model="selectedOption">
        </div>
    </fieldset>
</div>

yes-no-radio-group-directive.js:

function YesNoRadioGroupDirective() {
    return {
        restrict: 'E',
        transclude:true,
        template: require('./radio-group-template.html'),
        replace: true,
        scope: {
            RadioGroupId: '=',
            selectedOption: '=',
            optionsArray: ['Yes', 'No']
        }
    }
}
module.exports = YesNoRadioGroupDirective;

用法:

<form>
    <yes-no-radio-group radio-group-id="test" selected-option="Controller.Form.SelectedYesNo">Select Yes or No:</yes-no-radio-group>
    <radio-group radio-group-id="test-radio" options-array="['Hello World','Some Other Option']" selected="Controller.Form.SelectedYesNo">Select one of the options:</radio-group>
</form>

你為什么做這個? 您不必要求在第一個instance ,其次,如果你需要一個html,u需要templateUrl代替模板

template:require('./radio-group-template.html'),

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM