亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

angular.js - angularjs在兩個controller之間傳值,使用factory,為何不成功?

瀏覽:68日期:2024-10-04 13:33:52

問題描述

希望通過服務在兩個controller傳值,代碼如下:

angular.js - angularjs在兩個controller之間傳值,使用factory,為何不成功?但是并沒有成功。。。

angular.js - angularjs在兩個controller之間傳值,使用factory,為何不成功?這單括號是什么鬼?

angular.js - angularjs在兩個controller之間傳值,使用factory,為何不成功?控制臺只能得到setter 卻沒有getter請問這是為什么

問題解答

回答1:

1、那個單括號不是什么鬼,那是一個空對象。因為你在服務里面設置了myData為{},而且,你的getCtrl這個controller一開始就去獲取了這個值,所以說在頁面上會顯示{};

2、在你點擊add按鈕的時候,其實已經把input里面的值存入了myData中,只是你的getCtrl不會去獲取而已,簡單一點,你可以在getCtrl中也設置一個按鈕來點擊獲取myData的值;

3、在你的_getter函數中,你的這一句console.log..放在了return語句后面,無論怎么執行,都不會有輸出的。

我按照你的代碼稍微加了一點修改,你可以看看。

<p ng-app='myApp'> <p ng-controller='inputCtrl'><input type='text' ng-model='value' /><button ng-click='setValue()'>Add</button> </p> <p ng-controller='getCtrl'><p>{{ value }}</p><button ng-click='getValue()'>Get</button> </p></p>

angular.module(’myApp’, []) .factory(’factory_getValue’, function () {var myData = {};function _getter() { console.log(myData); return myData;}function _setter( a ) { myData = a;}return { getter: _getter, setter: _setter}; }) .controller(’inputCtrl’, function ( $scope, factory_getValue ) {$scope.setValue = function () { factory_getValue.setter($scope.value);} }) .controller(’getCtrl’, function ( $scope, factory_getValue ) {$scope.getValue = function () { // 點擊按鈕獲取myData的值 $scope.value = factory_getValue.getter();} });

主站蜘蛛池模板: 成人精品视频一区二区在线 | 日韩另类在线 | 娇小性色xxxxx | 国内精品九一在线播放 | 成人免费在线视频网站 | 国产免费一区二区 | 青青青在线视频国产 | 婷婷色在线 | 欧美久久视频 | 精品日韩在线视频 | 欧美一级特黄视频 | 亚洲国产高清一区二区三区 | 婷婷欧美 | 国产精品入口在线看麻豆 | 国产精品超清大白屁股 | 国产福利小视频在线播放观看 | 亚洲国产日韩在线 | 国产精品夜夜春夜夜爽久久 | 一级黄色一级黄色 | 欧美一级级a在线观看 | 九九热国产视频 | 久久大尺度| 国产精品美女自在线观看免费 | 精品无码久久久久国产 | 国产精品网红 | 狠狠色噜噜狠狠狠97影音先锋 | 日韩欧美在线综合网 | 中日韩在线 | 日韩一区二区三区四区五区 | 精品第一页| 日本一级特黄大一片免 | 正在播放国产精品白丝在线 | 免费可在线观看黄的视频 | 免费日韩在线观看 | 亚洲码在线观看 | 国产一级视频在线观看 | 美女黄色三级 | 亚洲色图欧美一区 | www.久色| 欧美三级不卡在线观线看高清 | 1024手机在线播放 |