Angular 依赖注入
<p>Angular 依赖注入 和.NetCore 的对比:</p><p> </p>
<table style="height: 67px; width: 1067px" border="0">
<tbody>
<tr>
<td>Angular</td>
<td>.Netcore</td>
<td>Example</td>
</tr>
<tr>
<td>Injector</td>
<td>ServiceProvider</td>
<td>
<div><br>
<div> constructor(injector: Injector) {</div>
<div> this.localization = injector.get(LocalizationService);</div>
<div> this.permission = injector.get(PermissionCheckerService);</div>
<div> this.feature = injector.get(FeatureCheckerService);</div>
<div> this.notify = injector.get(NotifyService);</div>
<div> this.setting = injector.get(SettingService);</div>
<div> this.message = injector.get(MessageService);</div>
<div> this.multiTenancy = injector.get(AbpMultiTenancyService);</div>
<div> this.appSession = injector.get(AppSessionService);</div>
<div> this.elementRef = injector.get(ElementRef);</div>
<div> this.modalHelper = injector.get(ModalHelper);</div>
<div> }</div>
</div>
</td>
</tr>
<tr>
<td>@Injectable</td>
<td>
<p> 自定义标签</p>
<p>类上修饰</p>
</td>
<td>
<div>
<div>
<div>
<div>@Injectable()</div>
<div>export class AppSessionService {</div>
<div> private _user: UserLoginInfoDto;</div>
<div> private _tenant: TenantLoginInfoDto;</div>
<div> private _application: ApplicationInfoDto;</div>
<div>。。。</div>
<div>}</div>
</div>
</div>
</div>
</td>
</tr>
<tr>
<td>@Inject</td>
<td>
<p>自定义标签,</p>
<p>参数上修饰</p>
</td>
<td>
<div>
<div> constructor(@Inject(HttpClient) http: HttpClient, @Optional() @Inject(API_BASE_URL) baseUrl?: string) {</div>
<div> this.http = http;</div>
<div> this.baseUrl = baseUrl ? baseUrl : "";</div>
<div> }</div>
</div>
</td>
</tr>
</tbody>
</table>
<p> </p>
<p><textarea id="BFI_DATA" style="width: 1px; height: 1px; display: none"></textarea></p>
<div id="WidgetFloaterPanels" class="LTRStyle" style="display: none; text-align: left; direction: ltr; visibility: hidden">
<div id="WidgetFloater" style="display: none">
<div id="WidgetLogoPanel"><span id="WidgetTranslateWithSpan"><span>TRANSLATE with </span><img id="FloaterLogo"></span> <span id="WidgetCloseButton" title="Exit Translation">x</span></div>
<div id="LanguageMenuPanel">
<div class="DDStyle_outer"><input id="LanguageMenu_svid" style="display: none" type="text" name="LanguageMenu_svid" value="en"> <input id="LanguageMenu_textid" style="display: none" type="text" name="LanguageMenu_textid"> <span id="__LanguageMenu_header" class="DDStyle">English</span>
<div style="position: relative; text-align: left; left: 0">
<div style="position: absolute; left: 0">
<div id="__LanguageMenu_popup" class="DDStyle" style="display: none">
<table id="LanguageMenu" border="0">
<tbody>
<tr>
<td>Arabic</td>
<td>Hebrew</td>
<td>Polish</td>
</tr>
<tr>
<td>Bulgarian</td>
<td>Hindi</td>
<td>Portuguese</td>
</tr>
<tr>
<td>Catalan</td>
<td>Hmong Daw</td>
<td>Romanian</td>
</tr>
<tr>
<td>Chinese Simplified</td>
<td>Hungarian</td>
<td>Russian</td>
</tr>
<tr>
<td>Chinese Traditional</td>
<td>Indonesian</td>
<td>Slovak</td>
</tr>
<tr>
<td>Czech</td>
<td>Italian</td>
<td>Slovenian</td>
</tr>
<tr>
<td>Danish</td>
<td>Japanese</td>
<td>Spanish</td>
</tr>
<tr>
<td>Dutch</td>
<td>Klingon</td>
<td>Swedish</td>
</tr>
<tr>
<td>English</td>
<td>Korean</td>
<td>Thai</td>
</tr>
<tr>
<td>Estonian</td>
<td>Latvian</td>
<td>Turkish</td>
</tr>
<tr>
<td>Finnish</td>
<td>Lithuanian</td>
<td>Ukrainian</td>
</tr>
<tr>
<td>French</td>
<td>Malay</td>
<td>Urdu</td>
</tr>
<tr>
<td>German</td>
<td>Maltese</td>
<td>Vietnamese</td>
</tr>
<tr>
<td>Greek</td>
<td>Norwegian</td>
<td>Welsh</td>
</tr>
<tr>
<td>Haitian Creole</td>
<td>Persian</td>
<td> </td>
</tr>
</tbody>
</table>
<img alt="" style="height: 7px; width: 17px; border-width: 0; left: 20px"></div>
</div>
</div>
</div>
</div>
<div id="CTFLinksPanel"><span id="ExternalLinksPanel"> <img id="HelpImg"><img id="EmbedImg"><img id="ShareImg"> </span></div>
<div id="FloaterProgressBar"> </div>
</div>
<div id="WidgetFloaterCollapsed" style="display: none"><span>TRANSLATE with </span><img id="CollapsedLogoImg"></div>
<div id="FloaterSharePanel" style="display: none">
<div id="ShareTextDiv"><span id="ShareTextSpan"> COPY THE URL BELOW </span></div>
<div id="ShareTextboxDiv"><input id="ShareTextbox" type="text" name="ShareTextbox" readonly="readonly"> <img id="EmailImg"></div>
<div id="ShareFooter"><span id="ShareHelpSpan"> <img id="ShareHelpImg"></span> <span id="ShareBackSpan"> Back</span></div>
<input id="EmailSubject" type="hidden" name="EmailSubject" value="Check out this page in {0} translated from {1}"> <input id="EmailBody" type="hidden" name="EmailBody" value="Translated: {0}%0d%0aOriginal: {1}%0d%0a%0d%0aAutomatic translation powered by Microsoft® Translator%0d%0ahttp://www.bing.com/translator?ref=MSTWidget"> <input id="ShareHelpText" type="hidden" value="This link allows visitors to launch this page and automatically translate it to {0}."></div>
<div id="FloaterEmbed" style="display: none">
<div id="EmbedTextDiv"><span id="EmbedTextSpan">EMBED THE SNIPPET BELOW IN YOUR SITE</span><img id="EmbedHelpImg"></div>
<div id="EmbedTextboxDiv"><input id="EmbedSnippetTextBox" type="text" name="EmbedSnippetTextBox" value="<div id='MicrosoftTranslatorWidget' class='Dark' style='color:white;background-color:#555555'></div><script type='text/javascript'>setTimeout(function(){var s=document.createElement('script');s.type='text/javascript';s.charset='UTF-8';s.src=((location && location.href && location.href.indexOf('https') == 0)?'https://ssl.microsofttranslator.com':'http://www.microsofttranslator.com')+'/ajax/v3/WidgetV3.ashx?siteData=ueOIGRSKkd965FeEGM5JtQ**&ctf=true&ui=true&settings=manual&from=en';var p=document.getElementsByTagName('head')||document.documentElement;p.insertBefore(s,p.firstChild); },0);</script>" readonly="readonly"></div>
<div id="EmbedNoticeDiv"><span id="EmbedNoticeSpan">Enable collaborative features and customize widget: Bing Webmaster Portal</span></div>
<div id="EmbedFooterDiv"><span id="EmbedBackSpan">Back</span></div>
</div>
</div>
</div>
<div id="MySignature" role="contentinfo">
气功波(18037675651)<br><br>
来源:https://www.cnblogs.com/qgbo/p/15654264.html
頁:
[1]