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. mysql - ubuntu开启3306端口失败,有什么办法可以解决?2. php传对应的id值为什么传不了啊有木有大神会的看我下方截图3. extra没有加载出来4. javascript - 微信网页开发从菜单进入页面后,按返回键没有关闭浏览器而是刷新当前页面,求解决?5. mysql - C#连接数据库时一直这一句出问题int i = cmd.ExecuteNonQuery();6. mysql日期类型默认值’0000-00-00’ 报错7. 求救一下,用新版的phpstudy,数据库过段时间会消失是什么情况?8. mysql replace 死锁9. windows - asp.net连接上mysql之后如何调用?比如下面的登录验证功能怎么实现10. android - 安卓做前端,PHP做后台服务器 有什么需要注意的?
