文章詳情頁
angular.js - angularjs中自定義指令scope的問題
瀏覽:69日期:2024-09-25 16:50:49
問題描述
angularjs中自定義的指令中scope的值為{}創造了一個隔離作用域,但依然能訪問到父級作用域中的屬性,怎么回事?(隔離作用域應該不能訪問父級作用域的屬性啊,在沒有進行綁定策略之前)
問題解答
回答1:先說一點你這個例子里也沒給scope屬性賦值啊。scope屬性三種取值:true,false,{}。false是默認值。
默認情況,false。此時,子作用域和父作用域是一個,scope.$$id的值一樣。
為true時是創建一個新作用域,scope.$$id值不同了。不過此作用域繼承自父作用域。 就是和原生js作用域鏈的特性相同,子作用域可訪問父作用域中的屬性和方法,父作用域不可訪問子作用域的屬性屬性和方法。
為{}時,是真正的隔離。這時自定義指令的作用域和父作用域完全沒關系了。但如果你還要訪問父作用域的屬性方法怎么辦,就把相應的屬性配置在{}中。具體配置方法題主自行谷歌百度吧。
回答2:同一個控制器里都可以訪問到,不同的控制器就訪問不到
回答3:你沒有隔離呀,隔離的話要加scope:{}
回答4:隔離scope有兩種方式:
scope: truescope: {}
上一條:angular.js - ng-repeat嵌套的directive link函數未執行下一條:angular.js - Angularjs 怎么把select寫成固定的 根據接口地址提交給后臺?
相關文章:
1. javascript - sublime什么插件可以在我自動保存代碼之后,對es6代碼自動檢查并格式化。2. python - Requests 如何中斷請求?3. docker-compose中volumes的問題4. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?5. java - 靜態屬性中的賦值和靜態代碼塊中的賦值有什么區別?6. android - recyclerview顯示錯亂7. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題8. node.js - mongo TTL 數據過期不刪除9. css3 - css怎么實現圖片環繞的效果10. mysql replace 死鎖
排行榜
