Which is the guideline to change view and pass data?

I’ve a state:

.state('tab.detail', {
		url: '/detail/:pfId',
		views: {
			'content-view': {
				templateUrl: 'templates/detail.html',
				controller: 'DetailCtrl'
			}
		}
	})

and from a parent view a call it via

<a  ui-sref="tab.detail({ pfId: item.UniqueId })"><i class="icon ion-android-storage"></i></a>

Controller:

.controller('DetailCtrl', function($scope,$stateParams) {
  console.log("DetailCtrl");

  $scope.uniqueID = $stateParams.pfId;
});

but the next template is not open because I’ve error TypeError: parent is null.
I don’t understand how switch to next view…

Had Anyone this error?

We can try to help if you setup a CodePen sample.