javascript - angularjs 中數組的修改問題
問題描述
最近在使用 angularjs 遇到一個修改數組的問題。HTML 代碼如下
<span>title1</span><span>title2</span>
js 代碼如下
$scope.title1 = '標題1'$scope.title2 = '標題2'$scope.arrTitle = [$scope.title1, $scope.title2];//我試著修改 $scope.arrTitle[0] = 'xx';
但是 $scope.title1 沒有修改?$scope.arrTitle[0] 打印過出來應該就是 $scope.title1 的啊?請問大神們指點一下,應該怎么修改才行?謝謝。
問題解答
回答1:$scope.arrTitle已經是一個新的變量了(數組)
你修改$scope.arrTitle[0],只是修改其第一個元素的數據。
$scope.arrTitle = [$scope.title1, $scope.title2];只是給數組賦初始值而已。
你希望改變$scope.arrTitle[0]時,$scope.title1也改變,那就用$scope.$watch吧
回答2:其實可以把arrTitle聲明為一個對象
<span ng-bind='arrTitle.title1'></span><span ng-bind='arrTitle.title2'></span>
$scope.arrTitle = { title1: '標題1', title2: '標題2'};//修改 $scope.arrTitle.title1 = 'xx';
相關文章:
1. html5 - 如何實現帶陰影的不規則容器?2. javascript - 循環嵌套多個promise應該如何實現?3. mysql優化 - 關于mysql分區4. css - 移動端字體設置問題5. objective-c - iOS開發支付寶和微信支付完成為什么跳轉到了之前開發的一個app?6. css3 - rem布局下,用戶瀏覽器的最小字號是12px怎么辦?7. vue.js - vue 打包后 nginx 服務端API請求跨域問題無法解決。8. 請教各位大佬,瀏覽器點 提交實例為什么沒有反應9. 前端 - IE9 css兼容問題10. javascript - ionic2 input autofocus 電腦成功,iOS手機鍵盤不彈出
