我看过前面的答案,但我不确定它们是否是我需要的答案。
我有一个指令,我们称它为"selectValue“。一个值可以有一个默认值,我们称它为"$scope.default“。
该指令在一个地方将如下所示:
<select-value ng-model="data.input" controlId="inputSelector" />
但在另一种情况下,它看起来像这样:
<select-value ng-model="myValue" controlId="inputSelector" />
我不能选择使ng-model输入相同;它们在不同的地方使用,这是一个遗留代码库。
以下是该指令的定义:
.directive('selectValue', ['$timeout', function($timeout) {
const directive = {
restrict: 'E',
scope: {
controlId: '@',
model: '=?'
},
controller: 'selectValueCtrl',
template: '<input id="{{controlId}}" name="{{controlId}}" placeholder="Enter Value" type="text" ng-model="model" />'
};
return directive;
}
问题:我该怎么做才能在模型的“<select-value>
”属性中输入不同的输入,让它访问不同的作用域变量?
编辑:引用的“重复”问题指的是设置ng-click的值,而不是引用表单控件中的ng-model。
发布于 2019-08-13 23:38:08
据我所知,它看起来像是您试图传递预设值的默认值。您面临的问题是,您的select-value元素正在使用ng-model指令来尝试传递数据,而您的指令中的绑定是'model‘。
要解决此问题,只需将“ng-model”更改为“model”,您的绑定就会正常工作。
最后,您的元素应该如下所示:
<select-value model="myValue" controlId="inputSelector" />
与此相对的是:
<select-value ng-model="myValue" controlId="inputSelector" />
https://stackoverflow.com/questions/57460074
复制相似问题