Rumah > Soal Jawab > teks badan
Sebagai contoh, memberikan objek tidak boleh terikat dua hala, tetapi memberikan rentetan atau sesuatu boleh dipantau. Bagaimana jika saya perlu memberikan nilai kepada objek supaya ia boleh diikat dalam dua arah (Saya katakan bahawa nilai yang diberikan selepas mengklik butang tidak boleh terikat)
<body ng-app="app">
<p ng-controller="loginCtrl">
<pre>{{info}}</pre>
<button ng-click="setvalue()">aaaa</button>
</p>
<p ng-controller="loginCtrl">{{info.isIn}}</p>
<script type="text/javascript">
var app = angular.module('app', []);
app.factory('login', ['$timeout', function($timeout){
var ret = {}
ret.info = {
isIn:false
}
//如果这里赋值成这样
var dd = {
isIn:'aaaaa'
}
$timeout(function() {
ret.info.isIn = true;
}, 1000);
ret.setvalue = function(){
//这里的修改就无法绑定,这事为什么
ret.info = dd
//ret.info.isIn=dd.Isin //这样写就可以
}
return ret;
}]);
app.controller('loginCtrl', ['$scope', 'login', function($scope, login){
$scope.info = login.info;
$scope.setvalue = function(){
login.setvalue('dddd')
}
}])
</script>
</body>
Oleh kerana data pada pelayan adalah objek jsonp, terdapat banyak yang diturunkan.
Tolong bantu saya~~, kod di atas boleh dijalankan dengan mengimport sudut, tolong bantu saya membetulkannya
给我你的怀抱2017-05-15 16:53:05
<p ng-controller="loginCtrl">
<pre>{{login.info}}</pre>
<button ng-click="setvalue()">aaaa</button>
</p>
app.controller('loginCtrl', ['$scope', 'login', function($scope, login){
$scope.login= login;
$scope.setvalue = function(){
login.setvalue('dddd')
}
}])
仅有的幸福2017-05-15 16:53:05
Ini melibatkan pengetahuan asas tentang js dan tiada kaitan dengan sudut. Contoh mudah:
js
var ret = {}; ret.info = {isIn:false}; var $scope = {}; $scope.info = ret.info; //这里修改 ret.info = {isIn:true,xx:'xx'}; console.log(ret.info, $scope.info);// 结果是:Object {isIn: true, xx: "xx"} Object {isIn: false}