డిపెండెన్సీ ఇంజెక్షన్ అనేది సాఫ్ట్వేర్ డిజైన్ నమూనా, ఇది భాగాలు వాటి డిపెండెన్సీలను పట్టుకునే విధానాన్ని నిర్దేశిస్తుంది. భాగాలు హార్డ్ కోడింగ్కు బదులుగా వాటి డిపెండెన్సీలను ఇస్తాయి. డిపెండెన్సీ ఇంజెక్షన్ ఉపయోగించి తిరిగి వినియోగం మరియు నిర్వహణ సాధించవచ్చు. లో సుప్రీం డిపెండెన్సీ ఇంజెక్షన్ కింది భాగాల ద్వారా చేయవచ్చు:
విలువ డిపెండెన్సీ ఇంజెక్షన్
AngularJs లోని ఒక సాధారణ వస్తువును విలువ అంటారు. ఇది స్ట్రింగ్, సంఖ్య లేదా జావాస్క్రిప్ట్ వస్తువు కావచ్చు. రన్ మరియు కాన్ఫిగర్ దశలో కర్మాగారాలు, సేవలు లేదా నియంత్రికలలో విలువలను పాస్ చేయడానికి దీనిని ఉపయోగించవచ్చు.
ఉదాహరణ:
// మాడ్యూల్ను నిర్వచించండి
var firstModule = angular.module ('firstModule', [])
// విలువ వస్తువును సృష్టించి దానికి డేటాను పాస్ చేయండి
firstModule.value ('numberValue', 50)
firstModule.value ('stringValue', 'xyz')
చెఫ్ vs అన్సిబుల్ vs తోలుబొమ్మ
firstModule.value ('objectValue', {val1: 456, val2: 'xyz'})
ఈ ఉదాహరణలో, విలువ () ఫంక్షన్ను ఉపయోగించి విలువలు నిర్వచించబడతాయి. విలువ యొక్క పేరు మొదటి పరామితి ద్వారా పేర్కొనబడింది మరియు రెండవ పరామితి విలువను నిర్దేశిస్తుంది. ఇది కర్మాగారాలు, సేవలు మరియు నియంత్రికలు ఈ విలువలను వారి పేరు ద్వారా సూచించడానికి అనుమతిస్తుంది.
విలువను ఇంజెక్ట్ చేయడం
విలువకు సమానమైన పేరుతో ఒక పరామితిని జోడించడం ద్వారా మనం AngularJs కంట్రోలర్ ఫంక్షన్లో విలువను ఇంజెక్ట్ చేయవచ్చు.
ఉదాహరణ:
var firstModule = angular.module ('firstModule', [])
firstModule.value ('numberValue', 18)
firstModule.controller ('FirstController', function ($ scope, numberValue) {
console.log (సంఖ్య విలువ)
})
ఫ్యాక్టరీ ఇంజెక్షన్
విలువలను సృష్టించే ఫంక్షన్ను ఫ్యాక్టరీ అంటారు. ఒక సేవ లేదా నియంత్రికకు కర్మాగారం నుండి ఇంజెక్ట్ చేయబడిన విలువ అవసరమైనప్పుడు, డిమాండ్పై విలువ ఫ్యాక్టరీచే సృష్టించబడుతుంది. విలువ సృష్టించబడిన తర్వాత, ఇది అన్ని సేవలు మరియు నియంత్రికలకు తిరిగి ఉపయోగించబడుతుంది.
ఇది విలువను లెక్కించడానికి మరియు తిరిగి ఇవ్వడానికి ఫ్యాక్టరీ ఫంక్షన్ను ఉపయోగించుకుంటుంది.
ఉదాహరణ:
var firstModule = angular.module ('firstModule', [])
firstModule.factory ('firstFactory', ఫంక్షన్ () {
'విలువ' తిరిగి ఇవ్వండి
})
firstModule.controller ('FirstController', function ($ scope, firstFactory) {
console.log (ఫస్ట్ఫ్యాక్టరీ)
})
ఫ్యాక్టరీలోకి విలువలను ఇంజెక్ట్ చేస్తుంది
కింది పద్ధతి ద్వారా ఒక విలువను ఫ్యాక్టరీలోకి ప్రవేశపెట్టవచ్చు:
var firstModule = angular.module ('firstModule', [])
firstModule.value ('numberValue', 29)
firstModule.controller ('FirstController', function ($ scope, numberValue) {
console.log (సంఖ్య విలువ)
})
ఇది విలువను గమనించాలిఫ్యాక్టరీ ఫంక్షన్ ద్వారా ఉత్పత్తి చేయబడుతుంది, ఫ్యాక్టరీ ఫంక్షన్ కాదు. AngularJs లోని డిపెండెన్సీ ఇంజెక్షన్ యొక్క ఈ కథనంతో ముందుకు వెళ్దాం.
AngularJ లలో సర్వీస్ ఇంజెక్షన్
ఫంక్షన్ల సమితిని కలిగి ఉన్న సింగిల్టన్ జావాస్క్రిప్ట్ ఆబ్జెక్ట్ను AngularJs లో ఒక సేవ అంటారు. సేవను నిర్వహించడానికి అవసరమైన తర్కం ఫంక్షన్లో ఉంటుంది. మాడ్యూల్లో సేవ () ఫంక్షన్ను ఉపయోగించడం ద్వారా సేవను సృష్టించవచ్చు.
ఉదాహరణ:
// మాడ్యూల్ను నిర్వచించండి
var firstApp = angular.module ('firstApp', [])
...
// ఒక పద్ధతిని నిర్వచించే సేవను సృష్టించండి సంఖ్య యొక్క చతురస్రాన్ని తిరిగి ఇవ్వడానికి చదరపు
firstApp.service ('CalciService', ఫంక్షన్ (MathService) {
this.square = ఫంక్షన్ (x) {
తిరిగి MathService.multiply (x, x)
}
})
// 'కాల్సిసర్వీస్' సేవను నియంత్రికలోకి చొప్పించండి
firstApp.controller ('CalciController', ఫంక్షన్ ($ స్కోప్, CalciService,
defaultInput) {
$ scope.number = defaultInput
$ scope.result = CalciService.square ($ scope.number)
$ scope.square = ఫంక్షన్ () {
$ scope.result = CalciService.square ($ scope.number)
}
})
ప్రొవైడర్
కాన్ఫిగర్ దశలో అంతర్గతంగా సేవలు లేదా ఫ్యాక్టరీని సృష్టించడానికి, మేము ప్రొవైడర్ను ఉపయోగించుకుంటాము. ప్రొవైడర్ అనేది గెట్ () ఫంక్షన్తో కూడిన ప్రత్యేక ఫ్యాక్టరీ పద్ధతి, ఇది విలువ / సేవ / ఫ్యాక్టరీని తిరిగి ఇవ్వడానికి ఉపయోగించబడుతుంది.
ఉదాహరణ:
// మాడ్యూల్ను నిర్వచించండి
var firstApp = angular.module ('firstApp', [])
...
// ప్రొవైడర్ను ఉపయోగించి ఒక సేవను సృష్టించండి, ఇది తిరిగి ఇవ్వడానికి ఒక పద్ధతి స్క్వేర్ను నిర్వచిస్తుంది
సంఖ్య యొక్క చదరపు.
firstApp.config (ఫంక్షన్ ($ అందించండి) {
$ provide.provider ('MathService', ఫంక్షన్ () {
ఇది. $ get = function () {
var ఫ్యాక్టరీ =
factory.multiply = ఫంక్షన్ (x, y) {
తిరిగి x * y
}
రిటర్న్ ఫ్యాక్టరీ
}
})
})
స్థిరంగా
మాడ్యూల్.కాన్ఫిగ్ () ఫంక్షన్లో వినియోగదారు విలువలను చొప్పించలేరు కాబట్టి, మేము స్థిరాంకాలను ఉపయోగించుకుంటాము. కాన్ఫిగరేషన్ దశలో విలువలను పాస్ చేయడానికి స్థిరాంకాలు ఉపయోగించబడతాయి.
firstApp.constant (“configParam”, “స్థిరమైన విలువ”)
ఉదాహరణ:
పైన పేర్కొన్న ఆదేశాలను ఈ క్రింది విధంగా ఉపయోగించవచ్చు:
డిపెండెన్సీ ఇంజెక్షన్
AngularJS స్క్వేరింగ్ ఉదాహరణ
మార్చగల మరియు మార్పులేని మధ్య వ్యత్యాసం
ఏదైనా సంఖ్యను నమోదు చేయండి:
X.2
ఫలితం: {{ఫలితం}}
var firstApp = angular.module ('firstApp', [])
firstApp.config (ఫంక్షన్ ($ అందించండి) {
$ provide.provider ('MathService', ఫంక్షన్ () {
ఇది. $ get = function () {
var ఫ్యాక్టరీ =
factory.multiply = ఫంక్షన్ (x, y) {
తిరిగి x * y
}
రిటర్న్ ఫ్యాక్టరీ
}
})
})
firstApp.value ('defaultInput', 6)
firstApp.factory ('MathService', ఫంక్షన్ () {
var ఫ్యాక్టరీ =
factory.multiply = ఫంక్షన్ (x, y) {
తిరిగి x * y
}
రిటర్న్ ఫ్యాక్టరీ
})
firstApp.service ('CalciService', ఫంక్షన్ (MathService) {
this.square = ఫంక్షన్ (x) {
తిరిగి MathService.multiply (x, x)
}
})
__init__ అంటే ఏమిటి
firstApp.controller ('CalciController', ఫంక్షన్ (ope స్కోప్, CalciService, defaultInput) {
$ scope.number = defaultInput
$ scope.result = CalciService.square ($ scope.number)
$ scope.square = ఫంక్షన్ () {
$ scope.result = CalciService.square ($ scope.number)
}
})
అవుట్పుట్:
దీనితో, మేము AngularJs వ్యాసంలో ఈ డిపెండెన్సీ ఇంజెక్షన్ ముగింపుకు వచ్చాము. సి హెక్ అవుట్ ప్రపంచవ్యాప్తంగా విస్తరించి ఉన్న 250,000 మందికి పైగా సంతృప్తికరమైన అభ్యాసకుల నెట్వర్క్తో విశ్వసనీయ ఆన్లైన్ లెర్నింగ్ సంస్థ ఎడురేకా చేత.
మాకు ప్రశ్న ఉందా? AngularJs లోని ఈ డిపెండెన్సీ ఇంజెక్షన్ యొక్క వ్యాఖ్యల విభాగంలో దయచేసి దీనిని ప్రస్తావించండి మరియు మేము మీ వద్దకు తిరిగి వస్తాము.