我已经尝试了一切.这就像我做的一切都不能让这个该死的旋转木马工作.它从控制器中引入了适当的数据,但它没有像旋转木马那样格式化 - 一切都在显示,而且这些单词堆叠在一起.
这是我的角度应用程序依赖项:
var app = angular.module('app', ['ngRoute', 'ui.bootstrap', 'ui.bootstrap.tpls', 'ngAnimate', 'ngTouch'])
Run Code Online (Sandbox Code Playgroud)
这是我的标记:
<link href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" rel="stylesheet"> <link rel="stylesheet" href="style/main.css">
<link rel="stylesheet" href="style/home.css">
<link rel="stylesheet" href="bower_components/animate.css/animate.css">
<link rel="stylesheet" href="bower_componenets/angular-bootstrap/ui-bootstrap-csp.css">
<link rel="stylesheet" href="bower_components/angular-carousel/dist/angular-carousel.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/gsap/1.10.3/TweenMax.min.js"></script>
<script src="bower_components/angular/angular.js"></script>
<script src="bower_components/angular-route/angular-route.js"></script>
<script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script>
<script src="bower_components/angular-animate/angular-animate.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui/0.4.0/angular-ui.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/0.13.4/ui-bootstrap.js"></script>
<script src="bower_components/angular-touch/angular-touch.js"></script>
<script src="bower_components/angular-carousel/dist/angular-carousel.js"></script>
<script src="js/app.js"></script>
<script src="js/controllers/homeController.js"></script>
Run Code Online (Sandbox Code Playgroud)
...
<div id="myCarousel" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
<li data-target="#myCarousel" data-slide-to="1"></li>
<li data-target="#myCarousel" data-slide-to="2"></li>
</ol>
<uib-carousel class="carousel-inner" role="listbox">
<uib-slide ng-repeat="slide …Run Code Online (Sandbox Code Playgroud) 我有一个mongodb数据库,调用pokemon了一个名为的集合pokemons.这是我尝试编写一个将find()在mongodb中执行操作的函数:
'use strict';
var MongoClient = require('mongodb').MongoClient;
var assert = require('assert');
// db url
var url = 'mongodb://localhost:27017/pokemon';
exports.getPokemonByName = function (name) {
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
var cursor = db.collection('pokemons').find({name: name});
// how to return json?
});
};
Run Code Online (Sandbox Code Playgroud)
然后我在另一个文件中调用此函数:
var express = require('express');
var router = express.Router();
router.get('/pokedex', function (req, res) {
res.jsonp(db.getPokemonByName('Dratini'));
})
Run Code Online (Sandbox Code Playgroud)
此链接有助于显示如何通过each()对游标对象执行某种方法将mongodb数据记录到控制台,但我不知道如何return通过该getPokemonByName函数进行json .我试图在getPokemonByName函数的根作用域上定义一个空数组,并将数据推送到该数组中,.each方法的每次迭代都显示在该链接中,但我认为我仍然无法返回该数组,因为它发生在事实之后.
顺便说一句,我真的只是为了好玩并了解MongoDB和Node.js,所以我不想使用像Mongoose这样的ODM来为我做这些工作.
谢谢你的帮助!
编辑
只是好奇,对于正在读这篇文章的人来说,为什么这个问题会被贬低?是因为答案可以从其他类似的问题中获得,还是其他什么? …
让我解释:
function PalindromeTwo(str) {
str = str.split('');
var arr = [];
str.forEach(function(it){
if( (/[a-z]/i).test(it) ){
arr.push(it);
}
})
var reverseArr = arr.reverse();
return reverseArr.join('').toUpperCase() === arr.join('').toUpperCase();
}
PalindromeTwo("hello, there");
Run Code Online (Sandbox Code Playgroud)
在这个例子中,它返回true它应该返回的false原因,因为该行不仅var reverseArr = arr.reverse()反转,reverseArr而且也arr就是原始变量.这是为什么?
我意识到这听起来像是一个完全多余的问题,但请听我说完。
最终我想从 dom 查询 MongoDB,但在那之前我可以从我的路由模块做。这是我的查询:
var db = require('./config/db.js');
router.get('/test', function (req, res) {
res.jsonp(db.getData('sampleSet'));
});
Run Code Online (Sandbox Code Playgroud)
'sampleSet' 是我正在查询的集合的名称。getData 函数应该从 MongoDB 获取数据。我把它放在 MongoClient 的 connect 函数的回调中,因为我想不出任何其他方式。从我的角度来看,由于getData()正在返回一个带有回调的函数findData,因此它应该返回数据。但事实并非如此。console.logs 返回数据,但它必须返回 undefined。
function findData (db, c, callback) {
var collection = db.collection(c);
collection.find().toArray(function(err, docs) {
assert.equal(err, null);
callback(docs);
});
};
MongoClient.connect(url, function(err, db) {
assert.equal(err, null);
console.log('CONNECTED CORRECTLY TO SERVER.');
exports.getData = function(c) {
return
findData(db, c, function(docs) {
console.log('FOUND THE FOLLOWING RECORDS: ');
return docs;
db.close();
});
}
});
Run Code Online (Sandbox Code Playgroud) javascript ×3
mongodb ×2
node.js ×2
angularjs ×1
asynchronous ×1
carousel ×1
database ×1
dependencies ×1
html ×1
json ×1
reverse ×1
variables ×1