我有一个像这样的对象:
var obj = { thing_1 : false,
thing_2 : false,
thing_3 : true,
thing_4 : false,
thing_5 : true
}
Run Code Online (Sandbox Code Playgroud)
我现在循环遍历此对象并搜索真实的对象键,如下所示:
for (value in obj){
if (obj[value] === true ){
// do something
}
}
Run Code Online (Sandbox Code Playgroud)
我如何知道何时到达最后一个循环传递,其中一个键是真的?
Angular仍然很新,只是找到我的方式.
我正在使用ng-repeat输出一个字母表的名称列表.我想在此列表中添加作为标签的分隔符.
例:
--------
A
--------
Author 1
Author 2
--------
B
--------
Author 3
Author 4
etc
Run Code Online (Sandbox Code Playgroud)
我的想法是使用嵌套的ng-repeats循环遍历字母表,通过第二个ng-repeat获取具有该特定字母的作者的对象.这是我到目前为止所拥有的:
<div data-ng-repeat="letter in alphabet">
<div class="item item-divider">
{{letter}}
</div>
<ul>
<li data-ng-repeat="speaker in GetSpeakers(letter)" type="item-text-wrap" href="#/speaker/{{speaker.ID}}">
{{speaker.title}}
</li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
控制器代码:
.controller('SpeakersCtrl', function($scope, $routeParams, StorageHandler) {
$scope.GetSpeakers = function(letter) {
// Get list of authors for that letter
console.log('test '+letter);
};
$scope.alphabet = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
})
Run Code Online (Sandbox Code Playgroud)
小提琴:http://jsfiddle.net/t6Xq8/
我有一些问题.
我试图用嵌套导航将我的大脑包裹在Angular UI路由器周围.
我的应用有多个页面.我已经设置了StateProvider,并且页面之间的基本路由工作正常.但是,我现在正尝试在其中一个页面中实现选项卡式视图.我无法让它发挥作用.
这里可以看到一个基本的例子:http: //codepen.io/anon/pen/eBLfD
具体来说:1)第一个选项卡的内容不会被加载; 2)当我将abstract设置为false时,保存选项卡的页面会被加载.
我已经尝试将abstract设置为false,然后页面加载,但第一个选项卡的内容不会被加载.我在抨击这个 - 我错过了什么?
我想计算今天午夜的时间戳,但是以毫秒为单位.
我目前有:
var d = new Date();
d.setUTCHours(0,0,0,0);
Run Code Online (Sandbox Code Playgroud)
这输出:
Thu Mar 20 2014 01:00:00 GMT+0100 (CET)
Run Code Online (Sandbox Code Playgroud)
如何将其转换为基于毫秒的时间戳?
我的应用程序中有一个处理API调用的基本工厂.目前我正在使用表格:
.factory('apiFactory', function($http){
var url = 'http://192.168.22.8:8001/api/v1/';
return {
getReports: function() {
return $http.get(url+'reports').then(function(result) {
return result;
});
},
getReport: function(id) {
return $http.get(url+'report/'+id).then(function(result) {
return result;
});
}
}
})
Run Code Online (Sandbox Code Playgroud)
在我的控制器中,我正在处理这样的承诺:
.controller('exampleController', function($scope, apiFactory) {
apiFactory.getReports().then(
function(answer) {
if (answer.status==200){
if (answer.data.status == "error"){
// DISPLAY ERROR MESSAGE
console.log(answer.data.msg);
}
} else{
// THROW error
console.log('error: ', answer);
}
},
function(error){
console.log('error: ', answer);
}
);
}
}
})
Run Code Online (Sandbox Code Playgroud)
似乎我可以将承诺处理转移到我的工厂而不是在我的控制器中进行,但我不确定除了较小的控制器之外是否还有其他好处.
有人可以解释有关这种模式的最佳做法吗?
Flow 具有方便的$Keys实用功能,可以从对象中提取键并创建字符串文字的联合。所以你可以这样做:
const foo = {
input: Input,
button: Button,
select: Select
}
type FormType = $Keys<typeof foo> // FormType now is: 'input' | 'button' | 'select'
Run Code Online (Sandbox Code Playgroud)
Typescript 是否具有等效功能?我知道,keyof但是interface当 Flow 可以获取对象的键时,它只能获取 的键。
我有一个 React Native 项目(0.61.4)yarn用作它的包管理器。
当我运行时yarn audit,报告了大量漏洞:
18202 vulnerabilities found - Packages audited: 958823
Severity: 18202 High
? Done in 14.34s.
Run Code Online (Sandbox Code Playgroud)
大多数都在一些非常深的依赖路径中。例如:
????????????????????????????????????????????????????????????????????????????????
? high ? Prototype Pollution ?
????????????????????????????????????????????????????????????????????????????????
? Package ? lodash ?
????????????????????????????????????????????????????????????????????????????????
? Patched in ? >=4.17.12 ?
????????????????????????????????????????????????????????????????????????????????
? Dependency of ? react-native ?
????????????????????????????????????????????????????????????????????????????????
? Path ? react-native > @react-native-community/cli > ?
? ? metro-react-native-babel-transformer > @babel/core > lodash ?
????????????????????????????????????????????????????????????????????????????????
? More info ? https://www.npmjs.com/advisories/1065 ?
????????????????????????????????????????????????????????????????????????????????
Run Code Online (Sandbox Code Playgroud)
当我运行时npm audit …
我正在一个有相当多文章的网站上工作.很多人通过YT嵌入代码嵌入了一个或多个YouTube视频.
由于设计已经改变,以前嵌入的视频的高度和宽度不再符合新设计.因此,我使用CSS定位iframe以显示正确的尺寸.这工作正常,但也有其他iframe对象(例如Soundcloud播放器)无意中调整大小.由于YT或SC嵌入代码没有类,我无法定位一种嵌入代码,而另一种嵌入代码则不受影响.
是否可以使用js仅将类添加到YouTube iframe元素,但保留其他iframe元素?
我有一个Applescript,可以打开Safari开发人员工具。每次我构建Cordova / Phonegap应用程序时,这免除了我单击开发->检查-> index.html的麻烦。
我现在想在构建项目并在模拟器中打开它时调用此Applescript。
我已尝试按照https://developer.apple.com/library/ios/recipes/xcode_help-project_editor/Articles/AddingaRunScriptBuildPhase.html中的说明添加构建阶段并添加脚本。
但是,当我在XCode中构建项目时,出现错误:"auto_opendevtools.applescript: bad interpreter: Permission denied"。似乎所有权限都很好。
在构建阶段如何输入脚本:

导致错误:

javascript ×4
angularjs ×3
angular-ui ×1
applescript ×1
auditing ×1
cordova ×1
date ×1
flowtype ×1
iframe ×1
ios ×1
jquery ×1
node.js ×1
npm ×1
promise ×1
soundcloud ×1
typescript ×1
xcode ×1
yarnpkg ×1
youtube ×1