function fun(){
console.log("Hi");
window.location.href="http://www.google.com";
console.log("Hello, how are you");
alert("I am good");
fun1();
}
function fun1(){
console.log("Whats up??");
}
Run Code Online (Sandbox Code Playgroud)
如果你看到上面的代码行在location.href
console.log之前被调用("你好,你好吗"),alert和fun1().
当我调用fun()
它时执行下面的所有语句location.href
然后重定向到https://www.google.com
.
所以我的问题是," location.href
呼叫本质上是异步的,如果不是,那么这里发生了什么"?
因为我认为它将用户重定向到其他页面的那一刻,它下面的代码行将永远不会执行.
任何帮助/解释表示赞赏!
谢谢
我有一个登录API,我在我的服务中使用它
function logInToService(callback, errback, login, password, rememberLogin) {
var url = "User/Login";
var authorizationHeader = {'Authorization': "Basic " + login + ":" + password};
httpWrapperService.post(url, {login: login, password: password}, authorizationHeader).then(
function success(loginToken) {
// transform data here
self.currentUser.emailAddress = login;
self.currentUser.password = password;
// store token in a cookie
self.currentUser.token = loginToken;
$rootScope.currentUser = self.currentUser;
if (rememberLogin) {
localStorage.userName=login;
localStorage.password=password;
}
httpWrapperService.setAuthenticationToken(loginToken);
callback(loginToken);
},
function error(errorObject) {
errback(errorObject);
}
);
}
Run Code Online (Sandbox Code Playgroud)
在我的标题html中,当他登录Header.html时,我在顶部显示用户名
<div class="header-user-menu">
<div ng-show="isUserLoggedIn() == false …
Run Code Online (Sandbox Code Playgroud) 如何针对以下场景对不同视图进行单元测试
.state('app.sr.product.upload', {
name: 'upload',
url: '/upload',
data: {
tags: [],
userCommunities: []
},
views: {
"productView@app.sr.product": {
templateUrl: 'views/upload/upload.html',
controller: 'UploadCtrl',
controllerAs: 'ul'
},
"tags@app.sr.product.upload": {
templateUrl: 'views/tags/tags.html',
controller: 'TagsCtrl',
controllerAs: 'vm'
},
"UserCommunityPanel@app.sr.product.upload": {
templateUrl: 'views/user-community/user-community.html',
controller: 'UserCommunityCtrl',
controllerAs: 'ul'
},
}
})
Run Code Online (Sandbox Code Playgroud)
如果我的观点是tags@app.sr.product.upload
那么我如何测试我的控制器是TagsCtrl,我的控制器值是vm等?
我怎么能单元测试,如果我的状态是app.sr.product.upload
再
data.tags=[], data.userCommunities=[]
等等.
我搜索了很多文档和教程,但没有得到它.
任何帮助都很明显.谢谢
unit-testing angularjs angular-ui-router angular-templatecache
我经历的angularJs
doc和来了解log
,warn
,error
等我们看到的输出,我们需要打开控制台,所以我的问题是
如果已经console.log()
有看到控制台的错误,那么什么用的$log
,哪里是地方/之情况,我必须涉及使用$log
我angularJs application
。
如何使用$ log将有关日志活动的信息存储在文件中。
我正在详细了解angularJs指令.目前我用它来限制用户不要输入特殊字符.
这是代码
HTML
<input type="text" no-special-char ng-model="vm.customTag" class="form-control" value="" />
Run Code Online (Sandbox Code Playgroud)
AngularJS指令
app.directive('noSpecialChar', function () {
return {
require: 'ngModel',
restrict: 'A',
link: function (scope, element, attrs, modelCtrl) {
modelCtrl.$parsers.push(function (inputValue) {
if (inputValue == null)
return ''
cleanInputValue = inputValue.replace(/[^\w\s]/gi, '');
if (cleanInputValue != inputValue) {
modelCtrl.$setViewValue(cleanInputValue);
modelCtrl.$render();
}
return cleanInputValue;
});
}
}
});
Run Code Online (Sandbox Code Playgroud)
这是我想要的两件事
(1)用户可以输入'-'
当前没有发生的减号/破折号,如何改变我/[^\w\s]/gi
允许用户输入的符号(短划线/减号).
(2)上述功能仅限制用户不输入任何特殊字符,但当用户键入特殊字符时,我想显示红色警告以及"不允许使用特殊字符",我该怎么做?
任何帮助表示赞赏!
谢谢
javascript regex special-characters angularjs angularjs-directive
我正在阅读 angular.io 的文档(反应形式是同步的),试图理解反应形式(它们是如何同步的,模板驱动的形式是如何异步的)。
但是文档对 example 没有足够的解释。谁能帮我理解模板驱动的表单是如何异步的,反应式表单是如何同步的?
我试图在互联网上浏览很多博客,但没有得到答案。
任何帮助表示赞赏。
嗨,我是新手angularjs
,我在stackoverflow上看到了很多关于此的问题,但未能找到一个好的解决方案.
<button ng-click="download()">download</button>
Run Code Online (Sandbox Code Playgroud)
我的要求是(1)我不想使用<a>
标签
(2)我不想使用<download>
属性,因为它应该在所有浏览器中都受支持.
当用户单击下载按钮时,图像应下载到客户端的本地计算机.
假设图像来自某个网址
<script>
angular.module('myApp', []);
angular.module('myApp').controller('HomeCtrl', ['$scope', '$http', function($scope, $http) {
$scope.download=function()
{
$http.get(url).success(function(data){
// code to download image here
}).error(function(err, status){})
}
}]);
</script>
Run Code Online (Sandbox Code Playgroud) <input type="checkbox" value="" ng-model="filterPrivateDocCheckBox" ng-click="dl.filterPrivateDocument(filterPrivateDocCheckBox, $event)">
<input st-search="target" class="input-sm form-control" ng-model="dl.documentTarget" ng-change="dl.change()" />
function filterPrivateDocument(val)
{
if(val)
this.documentTarget = 'Private';
}
Run Code Online (Sandbox Code Playgroud)
当我点击checkBox时,我将值设置为文本框,但是我看到ng-change
事件没有被触发.为什么?
而且当我在文本框中键入一些值时,我发现ng-change
事件被触发了.
解决这个问题的任何方法?
嗨,我对正则表达式了解不多。但是我在使用 angularJs 的表单验证中需要它。
下面是要求
输入框应仅在以下任一情况下接受
(1) 前 2 个字母 alpha + 6 个数字
或者
(2) 8 个数字
以下是一些正确的输入:-
(1)SH123456 (2)12345678 (3)sd456565
我试过data-ng-pattern="/(^([a-zA-Z]){2}([0-9]){6})|([0-9]*)?$/"
,它在上述两种情况下都可以正常工作,但它仍然接受像 S2D3E4F5 这样的字符串,也可能是许多其他组合。
我做错了什么我无法找到它。
任何帮助都是可观的!!!
谢谢
我无法理解为什么我的业力测试用例在固定测试用例后重新运行多次。
已断开连接,因为 50000 毫秒内没有消息。Chrome 75.0.3770 (Windows 10.0.0):已执行 131 个,共 251 个已断开连接(1 分 9.028 秒/18.285 秒)
Chrome 75.0.3770 (Windows 10.0.0):已执行 131 个,共 251 个已断开连接(47.273 秒/18.169 秒)
Chrome 75.0.3770 (Windows 10.0.0):已执行 131 个,共 251 个已断开连接(1 分 9.028 秒/18.285 秒)
Chrome 75.0.3770 (Windows 10.0.0):已执行 131 个,共 251 个已断开连接(47.273 秒/18.169 秒)
Chrome 75.0.3770 (Windows 10.0.0):已执行 97 个,共 251 个已断开连接(22.07 秒/19.87 秒)
Chrome 75.0.3770 (Windows 10.0.0):已执行 131 个,共 251 个已断开连接(1 分 9.028 秒/18.285 秒)
Chrome 75.0.3770(Windows 10.0.0):执行了 251 次成功中的 131 次(0 秒/17.406 秒)
Chrome 75.0.3770(Windows …
unit-testing jasmine karma-jasmine package.json angular-unit-test
angularjs ×7
javascript ×5
regex ×2
unit-testing ×2
angular ×1
jasmine ×1
logout ×1
onchange ×1
package.json ×1
page-refresh ×1