在以下代码的第4行,ESLint给我一个解析错误说:
意外的令牌=
我想知道为什么会这样?代码运行正常.我究竟做错了什么?
import { Component, PropTypes } from 'react';
export default class MainApp extends Component {
static propTypes = {
children: PropTypes.any.isRequired
}
componentWillMount() {
require('./styles/main.styl');
}
render() {
return (
<div>
{this.props.children}
</div>
);
}
}
Run Code Online (Sandbox Code Playgroud) 在我的模型中,我有两个名为:Vtable和的表Vdata.每个虚拟表(in Vtable)都有存储的虚拟数据条目Vdata.
我正在尝试制作一个可以显示Vdata每个对应列表的视图Vtable
我的序列化器不工作,我认为这是因为我正在向后做.我认为问题出在这一行:
table_id = serializers.RelatedField(many=True)
作为参考,我收到此错误: 'Vtable' object is not iterable
这是我的models.py:
from django.db import models
from django.contrib.auth.models import User
class Vtable(models.Model):
user = models.ForeignKey(User)
table_name = models.CharField(max_length=200)
added_date = models.DateTimeField('date added')
def __unicode__(self):
return self.table_name
class Vdata(models.Model):
table_id = models.ForeignKey(Vtable)
table_pk = models.IntegerField()
column_1 = models.CharField(max_length=200)
column_2 = models.CharField(max_length=200)
added_date = models.DateTimeField('date added')
def __unicode__(self):
return str(self.added_date)
Run Code Online (Sandbox Code Playgroud)
这是我的serializers.py:
from django.contrib.auth.models import User, Group
from rest_framework import serializers …Run Code Online (Sandbox Code Playgroud) 我正在编写一个聊天网络应用程序,需要能够通过通知API触发桌面推送通知:https://developer.mozilla.org/en-US/docs/Web/API/Notifications_API
不幸的是,似乎直到我通过用这个小提琴发出另一个通知才能显示通知:https://jsfiddle.net/yoshi6jp/Umc9A/
这是我正在使用的代码:
function triggerDesktopNotification() {
function makeNotification() {
var notification = new Notification('AppName', {
body: 'You have a new message!',
icon: '/favicon.ico',
});
notification.onclick = () => {
notification.close();
};
}
if (Notification.permission === 'granted') {
makeNotification();
}
else if (Notification.permission !== 'denied') {
Notification.requestPermission(function (permission) {
if (permission === 'granted') {
makeNotification();
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
我可以通过console.log()在new Notification通话结束后立即确认代码正确执行.有趣的是,如果我把它放在alert()那里,当我看到警告框(导航回我的标签后)时会显示通知.
我试图根据设备宽度设置两种不同的布局,所以我更喜欢两者都有相同的HTML布局,只需在CSS中使用媒体查询.
在两台设备上,我都会有一个图像(由绿框表示),它始终位于屏幕的左上角.就在它旁边,标题div也总是在同一个地方.
最有问题的div是描述div.如果它在桌面上,则该div应该与标题对齐,但如果它在移动设备上,它应该独立于图片下面.
下面的图像是使用float生成的,但是使用float也不理想,因为如果描述div足够长,它最终会流向左边(在桌面上),这不是所需的外观.在桌面上,它应该始终是两个清晰的列,描述不应该最终在图像div下面流动.
我很欣赏有关如何使用flexbox执行此操作的任何指导,谢谢!
作为参考,这是我对float的尝试(注意我不想使用float):
<!DOCTYPE html>
<html>
<head>
<style>
.div1 {
float: left;
width: 100px;
height: 50px;
margin: 10px;
border: 3px solid #73AD21;
}
.div2a {
border: 1px solid blue;
}
.div2b {
border: 1px solid red;
}
.div3 {
float: left;
width: 100px;
height: 50px;
margin: 10px;
border: 3px solid #73AD21;
}
.div4a {
border: 1px solid blue;
}
.div4b {
border: 1px solid red;
clear: left;
}
</style>
</head>
<body>
<h2>On Desktop</h2>
<div class="div1">div1</div>
<div class="div2a">div2a …Run Code Online (Sandbox Code Playgroud) 我正在尝试制作一个网络应用程序,允许用户选择页面上的一些文本,然后单击另一个按钮突出显示它。当用户返回页面时,我希望突出显示也显示在同一位置。
所以我已经做到了:
var selectedRange = document.getSelection().getRangeAt(0);
highlightRange(selectedRange);
Run Code Online (Sandbox Code Playgroud)
其中highlightRange是一个突出显示范围的函数。到目前为止这有效。
问题是,我需要一种方法将 selectedRange 保存到数据库中,以便稍后可以再次获取它。之后,我需要根据该数据重新创建范围并再次突出显示它。我找到了这个方法:
document.createRange();
Run Code Online (Sandbox Code Playgroud)
从这里页面:https ://developer.mozilla.org/en-US/docs/Web/API/range
但我不太确定如何才能完成这项工作
更新:
我知道之后我需要从头开始重新创建范围。为此,我将使用这样的东西:
var range = document.createRange();
range.setStart(startNode,startOffset);
range.setEnd(endNode,endOffset);
Run Code Online (Sandbox Code Playgroud)
我可以轻松存储 startOffset 和 endOffset 因为这些只是数字。但startNode和endNode是节点对象。我不知道如何将其存储在数据库中?
更具体地说,我需要将对节点的引用存储在数据库中。
假设我有以下 HTML:
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>AlwaysAtTheEnd</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
在列表项 3 之后,我将使用 javascript 插入列表项 4。发生这种情况后,HTML 将如下所示:
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>AlwaysAtTheEnd</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
但是,我希望“AlwaysAtTheEnd”项目能够平滑地向下滑动以为新项目腾出空间,而不是立即弹出来腾出空间。
我尝试简单地添加以下 CSS,但它似乎没有任何影响:
li {
-webkit-transition: all 1s ease-in-out;
-moz-transition: all 1s ease-in-out;
-o-transition: all 1s ease-in-out;
transition: all 1s ease-in-out;
}
Run Code Online (Sandbox Code Playgroud)
在这里小提琴: http: //fiddle.jshell.net/pcsj2mgb/
编辑:固定小提琴:http://fiddle.jshell.net/pcsj2mgb/1/
我一直在关注本教程:http://guide.elm-lang.org/architecture/user_input/forms.html
那里的文字对我有意义,我的问题与它在页面底部列出的练习有关.它问我:
"为年龄添加一个额外字段,并检查它是否为数字."
我对此有困难,因为onInput函数似乎只接受String输入.我觉得很奇怪,type="number"输入没有等价物.
然而,这是我的尝试不起作用:
import Html exposing (..)
import Html.App as Html
import Html.Attributes exposing (..)
import Html.Events exposing (onInput)
import String exposing (length)
main =
Html.beginnerProgram { model = model, view = view, update = update }
-- MODEL
type alias Model =
{ name : String
, password : String
, passwordAgain : String
, age : Int
}
model : Model
model =
Model "" "" "" 0
-- …Run Code Online (Sandbox Code Playgroud) 我知道一点BaconJS,但现在我正在尝试通过创建"用户输入..."指示器来学习RxJS.它非常简单,可以用两个简单的规则来解释:
我不确定这是否正确,但我到目前为止创建了两个流:
0每秒发出一次.1为每个事件发出一个.然后我将它们合并在一起,然后只需点击结果.如果是a 1,那么我会显示指标.如果它是a 0,那么我隐藏指标.
这是看起来像:
const showTyping = () =>
$('.typing').text('User is typing...');
const showIdle = () =>
$('.typing').text('');
// 1 second heartbeats are mapped to 0
const heartbeat$ = Rx.Observable
.interval(1000)
.mapTo(0);
// user typing events are mapped to 1
const input$ = Rx.Observable
.fromEvent($('#input'), 'input')
.mapTo(1);
// we merge the streams together
const state$ = heartbeat$
.merge(input$)
.do(val => val === 0 ? showIdle() : showTyping())
.subscribe(console.log); …Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个网站,允许用户突出显示一些文本(将背景更改为黄色),然后应用程序将保存此内容,以便下次他或她返回该页面时,它已经变成黄色了(就好像他们从未离开过一样)。
这是两个问题合而为一的问题:
我可以使用 获取文本window.getSelection().toString(),但我不知道如何将其作为选择器,以便我可以将选择的背景更改为黄色。
我不知道如何获取选择的“地址”。我需要这个,以便我可以将其保存到数据库中,并在用户下次加载页面时将其设置为黄色。
编辑目前正在研究这个: https: //github.com/timdown/rangy
我收到此错误:
连接错误:无法连接到节点 http://localhost:8545,它正在运行吗?
我目前正在尝试将 Meteor 应用程序与私有测试网络上的节点一起使用。我也尝试在真实网络的真实节点上运行它。我能够访问 web3.eth 对象,但我似乎无法连接到我的节点!这太令人沮丧了!
我的应用程序在http://localhost:3000 上运行
我在启动节点时尝试了以下操作,但它们都不起作用(它们启动正常,但我无法通过浏览器连接到它们):
geth --networkid 8545 --genesis ~/genesis_block.json --datadir ~/.ethereum_experiment 控制台
geth --rpccorsdomain "*" --rpc --networkid 8545 --minerthreads "1" --datadir ~/.ethereum_experiment --mine
这是我用来在浏览器控制台中设置提供程序的内容:
web3.setProvider(new web3.providers.HttpProvider("http://localhost:8545"));