上面的代碼現(xiàn)在是不能工作的。因?yàn)槲覀冇昧艘粋€(gè)隔離的scope,指令內(nèi)部的{{color}}表達(dá)式被隔離在指令內(nèi)部的scope屮(不是父scope)o但是外而的輸入框元素中的ng-model指令是指向父scope中的color屬性的。所以,我們需要一種方
5、式來(lái)綁定隔離scope和父scope中的這兩個(gè)參數(shù)。在Angular中,這種數(shù)據(jù)綁定可以通過(guò)為指令所在的HTML元索添加屬性和并指令定義對(duì)象中配置相應(yīng)的scope屬性來(lái)實(shí)現(xiàn)。讓我們來(lái)細(xì)究一下建立數(shù)據(jù)綁定的幾種方式。選擇一:使用@實(shí)現(xiàn)單向文本綁定在下而的指令定義屮,我們指定了隔離scope屮的屈性color綁定到指令所在HTML元素上的參數(shù)colorAttrc在HTML標(biāo)記中,你可以看到{{color}}表達(dá)式被指定給了color-attr參數(shù)。當(dāng)表達(dá)式的值發(fā)生改變吋,color-attr參數(shù)也跟著改變。隔離scope中的color屬性的值也相應(yīng)地被改變。ap
6、p.directive('helloWorld,,function(){return{scope:{color:'@colorAttr,},????//therestoftheconfigurations};});更新后的HTML標(biāo)記代碼如F:
7、只能將字符串(使用表達(dá)式{{}})傳遞給參數(shù)。當(dāng)父scope的屬性變化時(shí),你的隔離scope模型中的屬性值跟著變化。你其至可以在指令內(nèi)部監(jiān)控這個(gè)scope屬性的變化,并且觸發(fā)一些任務(wù)。然而,反向的傳遞并不工作。你不能通過(guò)對(duì)隔離scope屬性的操作來(lái)改變父scope的值。注意點(diǎn):當(dāng)隔離scope屈性和指令元素參數(shù)的名字一樣是,你可以更簡(jiǎn)單的方式設(shè)置scope綁定:app.directiveChelloWorld,,function(){return{scope:{color:?},????//therestoftheconfigurations};});相應(yīng)使
8、用指令的HTML代碼如下: 此文檔下載收益歸作者所有
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。