av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

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

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

問題描述

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

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

問題解答

回答1:

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

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

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

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

當(dāng)然指令中你只需要指定雙向綁定的屬性即可;

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

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

回答3:

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

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 有码在线| 伊人网国产 | 日韩在线视频免费观看 | 真人女人一级毛片免费播放 | 欧美日韩综合一区 | 日韩av在线免费 | 国产高清精品一区二区三区 | 日本三级视频 | 免费观看色 | 国内精品视频在线观看 | 欧美成人免费在线视频 | 国产免费色| 人人射人人插 | 欧美色性| 成人精品一区二区三区 | 日日干日日操 | 久久精品aaa | 97精品久久| 国产日韩欧美在线观看 | 欧美在线观看一区 | 精品国产乱码一区二区三 | 在线免费激情视频 | 国产精品精品久久久 | av黄色免费在线观看 | 久久精品亚洲 | 午夜视频免费在线观看 | 国产美女一区 | 自拍偷拍第一页 | 欧美国产精品 | 欧美亚州| 天天精品在线 | 亚洲精品福利视频 | 日日夜夜天天 | 欧美在线a| 黄色毛片免费看 | 男女在线免费观看 | 国产精品久久久久久久岛一牛影视 | 99久久婷婷国产综合精品首页 | www.日韩 | 一区二区三区av | 亚洲精品一区二区三区蜜桃久 |