小编Mih*_*šič的帖子

angularJS:http请求配置url必须是一个字符串

我有一个从前端获取输入的函数,然后将该输入合并到我想从维基百科获取的URL中.由于我遇到CORS问题,我将$ http.get实现为JSONP,现在我收到以下错误:

angular.js:13236错误:[$ http:badreq] Http请求配置url必须是一个字符串.收到:{"method":"JSONP","url":" https://en.wikipedia.org/w/api.php?action=query&format=json&uselang=user&prop=extracts%7Cpageimages&titles=Maya+Angelou&piprop=name% 7原住民 "}

问题是,他的错误显示连接的URL是一个字符串?

谁能指出我做错了什么?

这是我打电话的功能:

//function to get author info from wikipedia
$scope.getAuthorInfo = function(author) {
    //remove whitespace from author
    author = author.replace(/\s/g, '+');
    //concat the get URL
    var url = 'https://en.wikipedia.org/w/api.php?action=query&format=json&uselang=user&prop=extracts%7Cpageimages&titles=' +
        author + '&piprop=name%7Coriginal';
    //get author info from wikipedia    
    $http.get({
            method: 'JSONP',
            url: url
        })
        .then(function successCallback(response) {
            $scope.author = response.data;
            //for every result from wikipedia, trust the extract as html
            for (var x in $scope.author.query.pages) {
                $scope.author.query.pages[x].extract = $sce.trustAsHtml($scope.author.query.pages[x].extract);
            }

        }, …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs

5
推荐指数
1
解决办法
2万
查看次数

使用 Wikipedia API 继续参数

我正在使用维基百科 API 来查询搜索词,例如通过GET向此发出请求URL

https://en.wikipedia.org/w/api.php?action=query&format=json&list=search&utf8=1&srprop=snippet&continue=&srsearch=Slovenia
Run Code Online (Sandbox Code Playgroud)

此查询总共返回 51429 个匹配项,但仅显示前 10 个结果。通过阅读有关此主题的文档,我发现为了获得接下来的 10 个结果,我应该传入 continue 参数。

API响应中的相关参数如下:

continue: {
   sroffset: 10,
   continue: "-||"
}
Run Code Online (Sandbox Code Playgroud)

所以我通过以下方式构建我的网址:

https://en.wikipedia.org/w/api.php?action=query&format=json&list=search&utf8=1&srprop=snippet&continue=-||&srsearch=Slovenia
Run Code Online (Sandbox Code Playgroud)

但 URL 返回相同的结果集。

我究竟做错了什么?

get http wikipedia-api

5
推荐指数
1
解决办法
2005
查看次数

取消componentWillUnmount上的mobx自动运行功能

我的componentDidMount中有以下自动运行功能:

componentDidMount() {
        this.autoUpdate = autorun(() => {
            this.setState({
                rows: generateRows(this.props.data)
            })
        })
    }
Run Code Online (Sandbox Code Playgroud)

问题是当组件未挂载时,另一个组件会更改this.props.data - 因此我在未安装的组件上收到.setState警告.

所以我想在组件卸载后删除自动运行.

我试过做:

componentWillUnmount() {
    this.autoUpdate = null
}
Run Code Online (Sandbox Code Playgroud)

但是自动运行功能仍会触发.一旦组件不再安装,有没有办法取消mobx自动运行?

javascript reactjs mobx mobx-react

5
推荐指数
1
解决办法
1312
查看次数

将一个数组数组传递给lodash交集

我有一个包含对象的数组数组:

let data = [[{a:0}, {b:1}], [{a:1}, {b:1}]]
Run Code Online (Sandbox Code Playgroud)

现在我想要做这两个数组的lodash交集,返回[{b:1}]

当我这样做:

import {intersection} from 'lodash'

return intersection([{a:0}, {b:1}], [{a:1}, {b:1}])
Run Code Online (Sandbox Code Playgroud)

结果是对的.

但是,当我这样做

return intersection(data)
Run Code Online (Sandbox Code Playgroud)

我刚刚得到相同的结果.

有没有一种简单的方法可以将所有数组从数据传递到交集函数?我最初的想法是使用.map,但这会返回另一个数组......

javascript ecmascript-6 lodash

5
推荐指数
1
解决办法
3462
查看次数

jest mockgoose - 在测试运行完成后,jest没有退出一秒钟

我有一个猫鼬模型:

var mongoose = require("mongoose");

var transactionSchema = mongoose.Schema({
  category: { type: String, required: [true, "Category is required."] },
  amount: Number,
  comment: String,
  tags: Array,
  currency: String
});

var Transaction = mongoose.model("Transaction", transactionSchema);

module.exports = Transaction;
Run Code Online (Sandbox Code Playgroud)

并使用mockgoose和进行简单的单元测试jest:

var { Mockgoose } = require("mockgoose");
var mongoose = require("mongoose");
var Transaction = require("./transaction");

var mockgoose = new Mockgoose(mongoose);

describe("transaction", function() {
  afterEach(function() {
    mockgoose.helper.reset().then(() => {
      done();
    });
  });

  it("category is required", function() {
    mockgoose.prepareStorage().then(() => {
      mongoose.connect("mongodb://foobar/baz"); …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose node.js jestjs mockgoose

5
推荐指数
1
解决办法
7761
查看次数

fastify, jest: 在 fastify 实例上调用 .close() 后运行进程

我有以下功能来打开数据库连接并运行我的 fastify 服务器实例 (server.js)

import fastify from "fastify";
import fastifyCors from "fastify-cors";
import { MongoClient } from "mongodb";

import characterRoute from "./routes/character";
import gearRoute from "./routes/gear";

import CharacterDAO from "./dao/character";
import GearDAO from "./dao/gear";

import { seedData } from "./dataSeed";

let connection;
let serverInstance;

// server startup command
export const startServer = async port => {
  try {
    serverInstance = fastify({ logger: false });
    serverInstance.register(fastifyCors, {
      origin: "*"
    });
    serverInstance.register(characterRoute);
    serverInstance.register(gearRoute);

    await serverInstance.listen(port, "0.0.0.0");
  } catch (err) {
    serverInstance.log.error(err);
    process.exit(1); …
Run Code Online (Sandbox Code Playgroud)

node.js jestjs fastify

5
推荐指数
1
解决办法
1529
查看次数

链接不会在鼠标悬停时使用:hover更改颜色

我正在建立一个网站,并陷入这个奇怪的问题.当我更改colortext-decoration使用css选择器时a:link,a:visited代码工作正常,但是当我添加a:hover没有任何反应时.

基本上我想要的只是改变鼠标悬停时的链接颜色,这样人们就可以很容易地看到这是他们可以点击的链接.

我使用的是谷歌字体,名为normalize.css的模板(两者都使用CDN链接到代码段).我还使用了一个名为ionicons的自定义图标字体,以及另一个用于创建页眉/页脚的样式表,但我不认为它们是相关的,因为我在下面的代码段中重新创建了问题而没有链接到它们.

我确定我错过了一些明显但却无法弄明白的东西.下面的片段.

/************************************************
LAYOUT
************************************************/




/************************************************
SEARCHBOX
************************************************/
#articles-sidebar {
	margin: 0.5em 0;
	padding: 1em;
}
#articles-sidebar h2, #articles-sidebar p {
	margin: 0;
	padding: 0;
}
#articles-sidebar input {
	box-sizing: border-box;
	padding: 0.5em;
	margin: 0.5em 0;
}
#articles-sidebar input[type="submit"] {
	border: none;
	color: #fff;
	background-color: #26A65B;
}

/************************************************
ARTICLES
************************************************/
.article-box {
	padding: 0.5em;
	margin-bottom: 0.5em;
}
.free {
	background-color: #e3f9ec;
}
.members {
	background-color: #e1b8dd;
}
.article-categories …
Run Code Online (Sandbox Code Playgroud)

html css

4
推荐指数
1
解决办法
168
查看次数

使用ng-click更改出厂值

我有一个工厂,我将一个语言属性设置为字符串.现在我想在用户点击我网站上的图像时更改此属性(这里的想法是在单击标记时更改整个页面网站).到目前为止,ng-show当我手动更改页面时,页面语言会发生变化(用于此),但是在按下图像时我无法更改它.

我的工厂:

'use strict';

angular.module('langService', [])
    .factory('Language', function() {
        var myFactory = {};

        myFactory.language = 'slo';

        return myFactory;
    });
Run Code Online (Sandbox Code Playgroud)

我的控制器:

'use strict';

angular.module('ZICApp')
    .controller('navbarController', function ($scope, Language) {
        $scope.language = Language.language;
    });
Run Code Online (Sandbox Code Playgroud)

我的HTML:

  <div id="navbar" ng-controller="navbarController">
    <ul>
      <li><a ng-click="language = 'eng'"><img src="images/EN.gif"></a></li>
    </ul>
  </div>
Run Code Online (Sandbox Code Playgroud)

需要更改的内容位于视图文件内以及模板中.如果您需要有关该项目的其他信息,请告诉我,尽量减少它.

javascript angularjs

4
推荐指数
1
解决办法
761
查看次数

不匹配的标签.预期:</ br>

所以当我将html加载到容器上时出现此错误.

mismatched tag. Expected: </br>.
Run Code Online (Sandbox Code Playgroud)

当我打开它时,它只指向div标签(第17行).我不知道发生了什么,有人可以解释发生了什么吗?

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<br>
<div class="panel.group" id="accordion">
	<div class="panel panel-default">
		<div class="panel-heading">
      	<h3 class="panel-title">
         <a data-toggle="collapse" data-parent="#accordion" href="#collapseOne">Kon?ani Projekti</a>
         </h3>
		</div>
      <div id="collapseOne" class="panel-collapse collapse in">
      	<div class="panel-body">      		
				<img src="images/knjiznica-screenshot-thumbnail.jpg" class="img-thumbnail" id="knjiznica-IJS-link" alt="knjiznica webpage" />
				<h5 class="accordion-text-heading">Prenova doma?e spletne strani knjižnice IJS</h5>
				<br>
				<img src="images/grafi-screenshot-thumbnail.jpg" class="img-thumbnail" id="grafi-IJS-link" alt="javascript graf IJS" />
				<h5 class="accordion-text-heading">Interaktivni grafi</h5>
				<p>Spletna stran s strežnika prebere .csv datoteke, ter iz njih naredi interaktivni graf. Možnost izbire katero datoteko odpira, prisotnost vrednosti na …
Run Code Online (Sandbox Code Playgroud)

html

3
推荐指数
1
解决办法
3895
查看次数

正则表达式 - 从 markdown 字符串中提取所有标题

我使用灰质将文件系统中的 .MD 文件解析为字符串。解析器产生的结果是这样的字符串:

\n# Clean-er ReactJS Code - Conditional Rendering\n\n## TL;DR\n\nMove render conditions into appropriately named variables. Abstract the condition logic into a function. This makes the render function code a lot easier to understand, refactor, reuse, test, and think about.\n\n## Introduction\n\nConditional rendering is when a logical operator determines what will be rendered. The following code is from the examples in the official ReactJS documentation. It is one of the simplest examples of conditional rendering that I can …
Run Code Online (Sandbox Code Playgroud)

javascript regex string markdown match

3
推荐指数
1
解决办法
3533
查看次数