2,158   7 กำหนดสิทธิ IONIC 1 ทำยังไงครับ



ritikiat


พลังงานการช่วยเหลือ
( Level 1 )


คะแนนขอบคุณจากสมาชิก
( 0 )


ตอบกระทู้ ( 4 )
เขียนบทความ ( 0 )

* IONIC 1

ถ้าจะกำหนดสิทธิ user ว่า user1 login แล้วไป หน้า 1

user2 login แล้วไป หน้า2 , user3 login แล้วไปหน้า 3

พอจะมีแนะใส่โค้ด if else ใน controllers.js  ไหมครับ

ความคิดเห็นที่ 1
อ้างอิงความเห็น


ipromise


พลังงานการช่วยเหลือ
( Level 1 )


คะแนนขอบคุณจากสมาชิก
( 5 )


ตอบกระทู้ ( 5 )
เขียนบทความ ( 0 )

กรณีนี้ไม่แน่ใจใช้ login ผ่านอะไรนะคับ ถ้าใช้ API ตัวอย่างนะคับ

$scope.onLoginButtonClick = function(){

  var postData = {    

      "password": $scope.password,    

      "username": $scope.username    

  };   

  $http.post('http://login_URL', postData)   

    .success(function(data) {    

        alert("SUCCESS")    

        $scope.state.go('home');   

    })   

    .error(function(data) {    

        alert("ERROR");   

    }); 

}

====================================================================

เช็คจาก data ที่ return มาคับ

switch(data.permission)

{

  case 1: $scope.state.go('user1');

  break;

  case 2: $scope.state.go('user2');

  break;

  default:

  break;

}

***ถ้าใช้ $scope.state.go('home'); นี้ไม่ได้ลองเปลี่ยนเป็น $location.path("/home");

ผิดผลาดอย่างไรขอโทษด้วยคับ ลองปรับแต่งดู

ความคิดเห็นที่ 2
อ้างอิงความเห็น


bamossza


พลังงานการช่วยเหลือ
( Level 3 )


คะแนนขอบคุณจากสมาชิก
( 16 )


ตอบกระทู้ ( 112 )
เขียนบทความ ( 28 )

ลองศึกษาเรื่อง router ดูครับ
ความคิดเห็นที่ 3
อ้างอิงความเห็น


ritikiat


พลังงานการช่วยเหลือ
( Level 1 )


คะแนนขอบคุณจากสมาชิก
( 0 )


ตอบกระทู้ ( 4 )
เขียนบทความ ( 0 )

ขอบคุณครับ เดียวจะลองดูครับ :D
ความคิดเห็นที่ 4
อ้างอิงความเห็น


ritikiat


พลังงานการช่วยเหลือ
( Level 1 )


คะแนนขอบคุณจากสมาชิก
( 0 )


ตอบกระทู้ ( 4 )
เขียนบทความ ( 0 )

ขอถามอะไรหน่อยครับ 
จะดึงข้อมูลจากหลังบ้านมาโชว์แต่ GET แล้วมัน  Cannot read property 'get' of undefined จะถามว่าผมเขียนโค้ดถูกไหมครับ ?

controller.js
.controller('cloudTabDefaultPageCtrl', ['$scope', '$stateParams', 
	function ($scope, $stateParams, $http, $rootScope, $ionicPopup, $state) {
		$scope.costdata = [];
		$scope.url = "http://localhost:81/servicephp/loaddata.php";
		$http.get($scope.url)
			.success(function(data){
				$scope.costdata = data;
			})
			.error(function(data){
				console.log('error');
			});
	}
]);​

app.js
.state('tabsController.expenditure', {
	url: '/page2',
	views: {
		'tab1': {
			templateUrl: 'templates/expenditure.html',
			controller: 'cameraTabDefaultPageCtrl'
		}
    }
});

#หน้าที่จะแสดง 
<div class="list" ng-repeat="list in costdata">
	<a href="#/page1/page11">
		<button class="button button-icon button-clear ion-ios-plus-empty" menu-toggle="left"> </button>
		</ion-nav-buttons>
		<h2>{{list.name}}</h2>
		<h4>{{list.cost}}</h4>
		<h4>{{list.detail}}</h4>
	</a>
</div>
ความคิดเห็นที่ 5
อ้างอิงความเห็น


bamossza


พลังงานการช่วยเหลือ
( Level 3 )


คะแนนขอบคุณจากสมาชิก
( 16 )


ตอบกระทู้ ( 112 )
เขียนบทความ ( 28 )

ตรง controller.js ลองแก้แบบนี้
.controller('cloudTabDefaultPageCtrl', ['$scope','$http', 
	function ($scope, $http) {
		$http.get('http://localhost:81/servicephp/loaddata.php')
			.success(function(data, status, headers, config) {
				console.log(data);
			})
			.error(function(data, status, headers, config) {
				console.log('error');
			});
	}
]);
แล้วดู console.log ว่ามีค่ามาจาก api หรือเปล่า

อ้างอิง: https://stackoverflow.com/questions/24478293/cannot-read-property-get-of-undefined-with-angular/24478335#24478335
ความคิดเห็นที่ 6
อ้างอิงความเห็น


ipromise


พลังงานการช่วยเหลือ
( Level 1 )


คะแนนขอบคุณจากสมาชิก
( 5 )


ตอบกระทู้ ( 5 )
เขียนบทความ ( 0 )

อ้างอิงจากความเห็นที่ 4


ผมว่าต้องเช็คตั้งแต่ $http หรือเปล่าครับ
ถ้าไม่รู้จัก Get อะ
ไม่รู้แก้ได้หรือยัง แชร์วิธีแก้ ได้ไหมคับ เผื่อเจอเคสนี้อีก
ขอบคุณครับ :)

ความคิดเห็นที่ 7
อ้างอิงความเห็น


bamossza


พลังงานการช่วยเหลือ
( Level 3 )


คะแนนขอบคุณจากสมาชิก
( 16 )


ตอบกระทู้ ( 112 )
เขียนบทความ ( 28 )

แก้ได้หรือยังเอ่ย

แสดงความเห็น

อัพโหลดรูปภาพ..คลิก *** เพื่อความปลอดภัยในด้านสิทธิ ไม่อนุญาติให้นำลิ้งรูปภาพจากที่อื่นมาแปะ ถ้าพบเจอ ลบกระทู้ ทันที ***

Back to Top