久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

javascript - angularJS指令如何暴露API給外面的controller使用?

瀏覽:162日期:2024-03-05 11:30:52

問題描述

<button>expand</button><my-menu></my-menu>

我想點擊按鈕就展開menu,但怎么將menu的API暴露出來給button使用呢?或者有沒有其他更好的做法?

問題解答

回答1:

不需要暴露什么API, 你只需要在指令上使用自定義屬性進行數據雙向綁定即可。比如你需要顯示隱藏,你就在指令上使用一個display屬性,例如:

<my-menu display='someCtrlValue' ></my-menu>

然后在你的控制器中去控制這個值,比如

if(condition){ $scope.someCtrlValue = true; }

當然指令中你只需要指定雙向綁定的屬性即可;

Module.directive('myMenu', function(){ return { scope: { display : ’=’ } ... } })回答2:

你可以在寫my-menu指令的時候,指定一個雙向綁定屬性,比如collapse,然后通過<my-menu collapse='val'></my-menu>這樣使用,然后通過button的ng-click事件控制val變量(true/false)就可以。然后在定義指令時,通過獨立作用域實現雙向綁定,可參考http://xgfe.github.io/2015/12...這篇文章

回答3:

提供一個方法可以在指令中進行emit, 然后controller進行on監聽另外,一般指令是外部像內部傳值 才能達到指令的靈活性 ,如果這樣每次修改API不是得修改指令了?

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 瓮安县| 陆丰市| 新营市| 武川县| 临邑县| 北京市| 邹城市| 沂南县| 仲巴县| 舟曲县| 响水县| 青州市| 遂川县| 二连浩特市| 夹江县| 南召县| 丹江口市| 合江县| 南充市| 新晃| 潢川县| 沿河| 民权县| 阿合奇县| 彭泽县| 东源县| 平安县| 山西省| 武隆县| 淳化县| 将乐县| 东源县| 灵宝市| 大冶市| 醴陵市| 同江市| 赣州市| 永嘉县| 东至县| 边坝县| 贵州省|