gpt4 book ai didi

javascript - Angular,从指令发送信息到 Controller

转载 作者:行者123 更新时间:2023-12-03 10:47:51 25 4
gpt4 key购买 nike

我发现了一些这样做的好例子,但遇到了麻烦。我有一个点击功能,我想从我的指令向我的 Controller 发送一些信息。该函数看起来像这样 -

 function selected(info){
scope.changeSelect = info;
console.log(info);
}

非常简单 - 到目前为止,效果很好,console.log 显示了我需要它显示的内容。经过这一点,我认为我有一些不正确的地方。看起来是这样。

在我的指令顶部,我的范围设置如下

scope: {
changeSelect: "&"
}

然后在 html 指令调用 inline 旁边我有这个

change-select="onChange(changedVal)" >

然后在我的 Controller 中我有

$scope.onChange = function(changedVal) {
$scope.myPick = changedVal;
console.log("hit");
};

这部分没有受到欢迎 - 我不确定我在这里做错了什么,可以使用第二双眼睛。谢谢!

不知道这是否有帮助,但删除了不相关的部分并将其放入(不工作的) fiddle 中以使这一点更加清晰 -

http://jsfiddle.net/aubxhak3/1/

最佳答案

乍一看,即使您使用 & 绑定(bind)该函数,您也没有在 link 函数中的任何位置调用它。您可以尝试:

return {
template: '<div id="map"></div>',
restrict: 'EA',
scope: {
newInfo: "&"
},
link: function (scope, element, attrs) {
scope.newInfo(); // Call it here

function selected(info){ // Not sure what this does
scope.newInfo = info;
console.log(info);
}

}
};

作为替代方案(以防万一我误解了上述内容):this solution看起来很直观。 注意:在您的情况下,控制者将是订阅者。

关于javascript - Angular,从指令发送信息到 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28505486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com