我正在尝试设置我的visual studio代码编辑器,以便在焦点更改时自动保存文件.
阅读设置文档,我为项目设置了我的setting.json文件,如下所示:
// Place your settings in this file to overwrite default and user settings.
{
"files.exclude": {
"**/*.js": { "when": "$(basename).ts"},
"files.autoSave": "onFocusChange"
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我对文件进行更改时,切换到另一个文件没有任何反应(我仍然需要手动保存文件).
我究竟做错了什么?
我正在构建一个AngularJS带有文章新闻源的"简单" 应用程序.我的文章存储在mysql数据库中,我使用它来提取它们php PDO.我曾经使用AJAX简单的LAMP配置(php5, mysql, apache2)进行此操作,并且一切都按预期工作.
现在我正在尝试使用yeoman(bower+ grunt)重建项目,当我尝试使用$http.get服务调用我的.php脚本时,响应是实际的脚本内容(它返回代码而不是运行查询).
我不知道这是我的代码,我的grunt配置或其他什么问题.到目前为止,我还没有尝试过发布版本.
以下是相关页面:
风景:
<div id="articles-sidebar">
<h2>Search articles archive:</h2>
<form id="searchbox" method="post">
<input name="searchword" type="text" placeholder="author, title, keyword...">
<input type="submit" value="Search">
</form>
<div id="author">
</div>
</div>
<div id="articles-feed">
</div>
<div id="comments-box">
<form id="comment" method="post">
<textarea name="comment-text" placeholder="Your comment..."></textarea>
<input name="submit-comment" type="submit" value="Post Comment">
</form>
<div id="comments-feed">
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
控制器:'use strict';
angul
ar.module('ptcAngularJsApp')
.controller('ArticlesCtrl', function ($scope, …Run Code Online (Sandbox Code Playgroud) 我有一个简单的表单,需要 3 个字符串输入。我将这些绑定到$scope使用ng-model.
我想要做的是为名为“author”的字符串设置一个默认值,以防该字符串留空。
如果我仅使用 构建模型default,则当字段留空时,空字符串会写入我的数据库中,但当我require也使用时,不会写入任何内容(数据库返回错误)。
有人能解释我做错了什么吗?
架构:
var wordsSchema = new Schema({
author: {
type: String,
default: 'unknown',
index: true
},
source: String,
quote: {
type: String,
unique: true,
required: true
}
});
Run Code Online (Sandbox Code Playgroud)
快速 API 端点:
app.post('/API/addWords', function(req, res) {
//get user from request body
var words = req.body;
var newWords = new Words({
author: words.author,
source: words.source,
quote: words.quote
});
newWords.save(function(err) {
if (err) {
console.log(err);
} else {
console.log('words …Run Code Online (Sandbox Code Playgroud) 我有一个使用Link,IndexLink来渲染导航栏的导航组件:
class Navigation extends Component {
renderLinks = (linksData) => {
return linksData.map((link) => {
if(link.to === '/') {
return (
<li key={link.text}>
<IndexLink to={link.to}>
<i>{link.icon}</i>
<span>{link.text}</span>
</IndexLink>
</li>
);
} else {
return (
<li key={link.text}>
<Link to={link.to}>
<i>{link.icon}</i>
<span>{link.text}</span>
</Link>
</li>
);
}
});
};
render() {
const {links} = this.props;
return(
<div>
<ul>
{this.renderLinks(links)}
</ul>
</div>
)
}
}
Navigation.propTypes = {
links: React.PropTypes.array.isRequired
}
export default Navigation;
Run Code Online (Sandbox Code Playgroud)
现在我想测试我的链接是否正确呈现:
import React from 'react';
import {Link, IndexLink} from …Run Code Online (Sandbox Code Playgroud) 我在 gitHub 页面上托管一个个人项目,并使用 cloudflare 来强制执行 https。现在我想实施 CSP 政策。
我尝试将元标记添加到我的页面的头部:
<meta HTTP-EQUIV='Content-Security-Policy' CONTENT="default-src 'self' *.fonts.googleapis.com/* *.cloudflare.com/* *.fonts.googleapis.com/*;">
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
拒绝加载样式表 ' https://fonts.googleapis.com/icon?family=Material+Icons ' 因为它违反了以下内容安全策略指令:“default-src 'self' .fonts.googleapis.com/ .cloudflare .com/ .fonts.googleapis.com/ ”。请注意,'style-src' 未明确设置,因此使用 'default-src' 作为后备。
这是我包含的脚本:
<link href="https://fonts.googleapis.com/icon?family=Material+Icons"
rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Noto+Sans|Roboto" rel="stylesheet">
Run Code Online (Sandbox Code Playgroud)
不会设置*.fonts.googleapis.com/*允许页面中的所有内容吗?
由于这是我第一次设置 CSP,这是为 github 页面设置 CSP 的正确方法吗?我还没有找到任何关于此的阅读。
我有一个App组件,我正在包装到apollo提供程序中:
import React, { Component } from "react";
import { observer, Provider } from "mobx-react";
import { BrowserRouter as Router } from "react-router-dom";
import styled from "styled-components";
import { ThemeProvider } from "styled-components";
// graphQL
import { ApolloClient } from "apollo-client";
import { createHttpLink } from "apollo-link-http";
import { setContext } from "apollo-link-context";
import { InMemoryCache } from "apollo-cache-inmemory";
import Main from "./components/Main/Main";
import Navigation from "./components/Navigation/Navigation";
import { ApolloProvider } from "react-apollo";
const httpLink = createHttpLink({
uri: …Run Code Online (Sandbox Code Playgroud) 我试图通过使用react activeClassName属性来设置我的导航样式.到目前为止,它按预期工作,但有一个问题 - 我的第一个导航链接指向根路径(/).因此,即使在另一个URL上,它也会将该URL(例如/技能)和root注册为活动(因此2个菜单项的样式).
有一个简单的解决方法吗?我应该将Root路由定义为其他东西(例如/ home)吗?
我的标题:
import React, { PropTypes } from 'react';
import { Link, IndexLink } from 'react-router';
const Header = () => {
return (
<div className="header">
<div className="headerImage"></div>
<ul className="headerNav">
<li className="headerNavLink"><Link to="/" activeClassName="activeLink">introduction</Link></li>
<li className="headerNavLink"><Link to="/skills" activeClassName="activeLink">skills</Link></li>
<li className="headerNavLink"><Link to="/portfolio" activeClassName="activeLink">portfolio</Link></li>
</ul>
</div>
);
};
export default Header;
Run Code Online (Sandbox Code Playgroud)
routes.js:
import React from 'react';
import { Route, IndexRoute } from 'react-router';
//Import app
import App from './components/App';
//Import pages
import IntroductionPage from './components/introduction/IntroductionPage';
import …Run Code Online (Sandbox Code Playgroud) 按照这个例子,我编写了以下函数:
var rasterToVectorWorker = new Worker(
"../../../services/canvas/rasterToVectorWorker.js"
);
rasterToVectorWorker.postMessage("message");
rasterToVectorWorker.onmessage = e => {
console.log("this is the return from the worker: ", e);
};
Run Code Online (Sandbox Code Playgroud)
rasterToVectorWorker.js:
onmessage = function(e) {
console.log("Message received from main script");
var workerResult = "Result: " + e;
console.log("Posting message back to main script");
postMessage(workerResult);
};
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误消息:
rasterToVectorWorker.js:1 Uncaught SyntaxError: Unexpected token <
使用window.onmessage也没有解决问题。
编辑:我正在使用 create-react-app 而不弹出和添加 webpack 加载程序
我究竟做错了什么?
我正在使用维基百科 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 返回相同的结果集。
我究竟做错了什么?
我的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 ×5
reactjs ×3
react-router ×2
angularjs ×1
apollo ×1
enzyme ×1
express ×1
get ×1
gruntjs ×1
html ×1
http ×1
jestjs ×1
meta ×1
mobx ×1
mobx-react ×1
mongoose ×1
node.js ×1
pdo ×1
php ×1
web-worker ×1