随着Angular6的发布,他们增加了一个新的命令添加.任何人都可以告诉我现有command npm install <package>和现有的区别ng add <package>
在任何情况下,Promise都比可观察的功能更强大吗?我知道可观察变量比承诺具有很多好处。但是无论如何,我应该只对可观察对象使用诺言。
我发现了这个链接,promise vs observables。但是,这始终向我展示了可观察性优于承诺的优势。我想知道诺言比可观察的好处。
我们正在使用 Jenkins 管道在 apache 服务器上部署我们的 React 应用程序。当我们部署新代码时,大多数新功能都可以正常工作,但并非所有更改都反映了浏览器中的最新情况。用户必须打开隐身窗口或清除缓存才能查看新功能。
我已经看到了相关的几个解决方案的角度应用 但任何特定反应的应用程序,我没有看到任何地方。在构建期间,我们可以添加一些可以自动为最终用户提供最新更改的内容吗?我想, Cache busting 是必需的 但是我们怎么能在代码中没有大量修改,就像上面的解决方案对 Angular 应用程序所做的那样。
我在MVC和sql server中创建一个新的电子商务应用程序作为数据库.我想使用相同的实体框架.我对选择数据访问层感到困惑.我应该在WCF与Web API和Web服务之间使用哪一个.有可能在将来我们可能需要Android和IOS应用程序.我认为Web api将是最好的选择.
我试图找到web api和WCF之间的区别,我发现了什么.新的ASP.NET Web API是以前的WCF Web API项目的延续(尽管一些概念已经改变).
WCF最初是为了启用基于SOAP的服务而创建的.对于更简单的RESTful或RPCish服务(想想像jQuery这样的客户端),ASP.NET Web API应该是不错的选择.有数千个链接告诉Rest,TCP,FTP,soap,Http. 但没有我找到答案的地方.我仍然困惑哪一个会解决我的问题.如果我选择Web api还有一件事,实体框架可以与Web api集成.我是dot net的新手.任何帮助都会非常有帮助.
编辑: @win感谢您的帮助.我想知道,如何决定我应该选择哪一个,RESTFull(Web api)或WCF(Soap).应用中的哪些因素决定使用哪一个因素.
我正在为有条件的 html div 编写单元测试*ngIf。
<div *ngIf="clientSearchResults$ | async as searchResults" class = 'fgf' #datalist id="mydata" >
<app-client-list id="clientDataTable1" class="clientDataTable dataTable" [clients]='searchResults'></app-client-list>
</div>
Run Code Online (Sandbox Code Playgroud)
当我从ngrx存储收到数据时,这个ngIf条件成立。下面是填充此数据的组件代码。
searchData(client: Client) {
//// some conditions
this._clientService.getClientList()
.subscribe(data => {
const filteredData = this.filterData(data, client);
this.isDataFound = filteredData !== null && filteredData.length > 0;
this.testbool = true;
/// In this line, my div got the data and using async condition, we
/// fill the div element.
this.store.dispatch(new SetClientSearchResultsAction(filteredData));
});
}
Run Code Online (Sandbox Code Playgroud)
现在,在为此编写单元测试用例时。
it('should …Run Code Online (Sandbox Code Playgroud) 我正在将数据发送到ngrx store。之后我想滚动到一个特定的div,它使用来自商店的这些数据。
@ViewChild('datalist') private myScrollContainer: ElementRef;
this.store.dispatch(new SetClientSearchResultsAction(filteredData));
setTimeout(() => {
this.myScrollContainer.nativeElement.scrollIntoView({ behavior:'smooth', block: 'start'});
}, 300);
Run Code Online (Sandbox Code Playgroud)
下面是 HTML div。
<div #datalist id="mydata" *ngIf="clientSearchResults$ | async as searchResults"
class = 'result'>
<p> hellooo</p>
</div>
Run Code Online (Sandbox Code Playgroud)
将数据分派到存储后,我在我的 div 中获取滚动。但我不想使用setTimeout. 它不必要地等待 300 毫秒。有没有其他方法可以做到这一点?我只想滚动到我的div,当我的数据被发送或 ngif 条件得到满足时。
下面是我从 Store 获取值的组件的构造函数。
constructor(private store: Store<AppState>,
private formBuilder: FormBuilder, private _clientService: ClientService) {
this.clientSearchResults$ = this.store.select('searchResults');
}
Run Code Online (Sandbox Code Playgroud) 如果我想在第一次渲染组件后调用 API,我知道我们有useEffect钩子来调用 API 方法。(我只讨论功能组件。没有类组件)。
有什么办法,我可以在我的组件第一次渲染之前调用 API。
这个问题的原因是,如果某些 UI 部分依赖于 API,我不想在第一次渲染时向用户显示任何不完整的信息,一旦我从 API 获取数据,这些信息就会改变。这似乎是一个糟糕的 UI 体验。
编辑:我得到了一些使用 useLayoutEffect 或任何消耗性标志来检查它是否渲染的建议。我已经检查过 useLayoutEffect 不起作用,并且通过使用 consumable 标志,我们只是增加了复杂性。
对此我们有没有更好的办法呢?
javascript reactjs react-lifecycle react-hooks react-functional-component
我创建了一个角度2应用程序.现在,这些是Windows身份验证的要求.
1)如果组织内的任何用户访问此应用程序,他不应该获得登录提示,并且应该能够直接登录到该应用程序.
2)如果组织内的任何特定用户 试图访问该应用程序,那么他应该获得特定角色(如admin,Manager)并能够直接登录.
3)如果组织外的任何用户试图访问该应用程序,他应该获得登录提示.
编辑:后端也将发挥重要作用.我使用节点js和express创建了rest API.那么这个护照包对我的情况有帮助吗?我已经在我的节点js rest API上实现了passport.js,但是现在如何在角度方面验证那个东西.
任何帮助将受到赞赏和赏金奖励.
我有一个AllowOnlyNumbers适用于输入类型文本框的指令。
<input
[AllowOnlyNumbers]=true
[maxLength]= 'yearlyFieldMaxLength'
type="tel"
name="totalAnnualIncome"
formControlName="totalAnnualIncome"
[(ngModel)]="yearlyIncomeAmt"
(focus)="onFocusEnableToolTip('TotalAnnualIncome')"
(focusout)="onFocusOutDisableToolTip('TotalAnnualIncome')"
minlength="2"
autocomplete="off"/>
Run Code Online (Sandbox Code Playgroud)
一个非常简单的指令限制用户仅在文本框中输入数字。
import { Directive, HostListener, Input } from '@angular/core';
@Directive({
selector: '[AllowOnlyNumbers]'
})
/**
* @method AllowOnlyNumbers
* @desc This directive restricts the keyboard entry to numbers only.
* Users can enter numbers and can use backspace, tab,enter, escape, end, home, left, right and del keys.
* Usage: <input type = "text" [AllowOnlyNumbers] = true />
*/
export class AllowOnlyNumbers {
constructor() { }
@Input() …Run Code Online (Sandbox Code Playgroud) unit-testing typescript karma-jasmine angular2-directives angular
angular ×7
typescript ×4
javascript ×3
angular6 ×2
ngrx ×2
reactjs ×2
android ×1
angular-cli ×1
angular-test ×1
apache ×1
asp.net ×1
c# ×1
caching ×1
deployment ×1
ecmascript-6 ×1
excel ×1
login ×1
node.js ×1
npm ×1
observable ×1
passport.js ×1
promise ×1
react-hooks ×1
rxjs ×1
settimeout ×1
unit-testing ×1
wcf ×1