我有一个装饰引号包围的段落.布局是流畅的,对于某些宽度,只有装饰性的报价是包装,我想避免.
截图:
代码:http://jsfiddle.net/84EDh/1/(注意:未在Chrome之外测试)
<p>
<span class="bigchar ldquo"></span>
Begin paragraph [...paragraph content...] end paragraph.
<span class="bigchar rdquo"></span>
</p>
Run Code Online (Sandbox Code Playgroud)
CSS:
p { position: relative; }
.bigchar {
display: inline-block;
width: 20px;
}
.bigchar:after {
color: #aaa;
font-size: 50px;
position: absolute;
}
.ldquo:after {
content: '“';
top: -10px;
}
.rdquo:after {
content: '”';
bottom: -30px;
}
Run Code Online (Sandbox Code Playgroud)
可能的方法:
用另一个跨度中的结束跨度包裹最后一个单词
[...paragraph content...] end
<span class="nowrap">
paragraph.
<span class="bigchar rdquo"></span>
</span>
Run Code Online (Sandbox Code Playgroud)
题:
是否有一种更优雅的方式来实现span段落末尾的无包装?
这不是很语义,也不容易实现,因为正如您所料,段落的内容是动态的,因此在模板级别不容易分割.
编辑:css补充说
题 :
如何设计一个社交网络"Feed"与Firebase作为后端,可扩展?
可能答案:
"MVP"解决方案是设计一个feeds根子项,每个用户一个,并在每个关注者的提要中追加跟随用户的任何新帖子.
users
user1
name: bob
user2
name: alice
follows:
user1: true
posts
post1
author: user1
text: 'Hi there'
feeds
user2
post1: true
Run Code Online (Sandbox Code Playgroud)
这很有效,并在Firefeed项目中进行了演示.但它不能很好地扩展:如果凯蒂佩里想发布一些东西,她的手机将不得不写入数百万的饲料.
因此,在此SO问题中报告的解决方案将此操作委托给基于服务器的进程.
我的问题是,Firebase是一种"无后端"解决方案,这也是我使用它的主要原因,所以我想确保在没有服务器的情况下完全没有机会实现此功能.
如果feeds在上述架构中删除了孩子怎么办?
然后这样做:
baseRef.child('posts')
.orderBy('author')
.whereIn(baseRef.child('users/user2/follows').keys())
Run Code Online (Sandbox Code Playgroud)
很遗憾,whereInFirebase API中不存在,也不存在子查询:(
任何其他模型结构可能不需要服务器?
谢谢
我有一个单页 React 应用程序,它由许多文件组成,与 gulp/browserify 捆绑在一起。
Firebase javascript 嵌入在此包中。
我想知道是否有一种简单的方法可以在另一个工作线程上运行某些 Firebase 操作?
我尝试过的:
设置一个工作器并通过 worker.postMessage(xxx). 在这两种情况下,它都会抛出一个错误,表示the object cannot be cloned. 下面是 Firebase 对象的示例。
var blobURL = URL.createObjectURL(new Blob([ '(',
(function() {
var onmessage = function(event) {
var FB = new event.data.Firebase('my firebase URL');
// Here, some Firebase operations
// ...
};
}).toString(),
')()' ], { type: 'application/javascript' }));
var postViewedWorker = new Worker(blobURL);
URL.revokeObjectURL(blobURL);
[... later on ...]
postViewedWorker.postMessage({Firebase: Firebase, ...otherParams});
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,Worker 工作(哈哈),直到我尝试通过 Firebase。
我想避免什么: …
我开发了一个javascript CLI应用程序,它使用ES2015代码和babel作为编译器.(babel-require hook)
该应用程序在本地完美运行,但当我在npm上发布时,它停止工作(babel似乎不再编译ES2015文件)
建立:
样本./bootstrap.js(ES5):
require('babel-register');
require('./src/app.js');
Run Code Online (Sandbox Code Playgroud)
样本./src/app.js(ES2015):
import package from 'package';
...
Run Code Online (Sandbox Code Playgroud)
样品./bin/myapp:
#!/usr/bin/env node
require('../bootstrap.js');
Run Code Online (Sandbox Code Playgroud)
在本地运行:
appdir$ ./bin/myapp
I'm running fine!
appdir$
Run Code Online (Sandbox Code Playgroud)
全局运行(在npm安装之后)中断:
$ sudo npm install -g myapp
??? myapp@0.1.0
$ myapp
/usr/local/lib/node_modules/myapp/src/app.js:1
(function (exports, require, module, __filename, __dirname) { import package from 'package';
^^^^^^
SyntaxError: Unexpected token import
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:404:25)
at Module._extensions..js (module.js:432:10)
at Object.require.extensions.(anonymous function) [as .js] (/usr/local/lib/node_modules/myapp/node_modules/babel-register/lib/node.js:138:7)
at Module.load (module.js:356:32)
at …Run Code Online (Sandbox Code Playgroud) 我想简化 Firebase 应用程序中的身份验证工作流程,并让用户无需密码即可连接:
或者
如果是后者,用户只需填写他们的地址,接收 URL,然后立即登录,而无需输入/记住密码。
每当他们注销或会话超时时,他们都会再次输入电子邮件,并收到一个新链接以开始新会话。
如何使用 Firebase 做到这一点?
我觉得这在客户端是不可能的,那么实现该工作流程的最佳服务器端例程是什么?
javascript web-applications firebase firebase-authentication
我最近开始使用新的React Hooks API,发现它很棒!
但是,我在依赖项区域遇到了一个小混乱。
基本上,我的用例非常简单,可以通过以下伪代码进行说明:
import React, { useState, useCallback, useEffect } from 'react'
function Component() {
const [state, setState] = useState()
const doStuff = useCallback(() => {
// Do something
setState(result)
}, [setState])
useEffect(() => {
// Do stuff ONLY at mount time
doStuff()
}, [])
return <ExpensivePureComponent doStuff={doStuff} />
}
Run Code Online (Sandbox Code Playgroud)
现在,以上代码可以正常工作。
但是在我安装完之后eslint-plugin-react-hooks,有一个警告。我必须声明在我的效果中使用的所有依赖项,即此处doStuff。
好的,让我们修复该代码:
useEffect(() => {
// Do stuff ONLY at mount time
doStuff()
}, [doStuff])
Run Code Online (Sandbox Code Playgroud)
酷,不再警告!
让我们看看文档怎么说useCallback:
useCallback(fn,deps)等同于useMemo(()=> fn,deps) …
我在尝试下载附加到Podio项目的文件时遇到问题:
podio.request('get', '/file/{file_id}/raw').then(console.log);
Run Code Online (Sandbox Code Playgroud)
以上程序显示:
{}
Run Code Online (Sandbox Code Playgroud)
这是一个JSON字符串化的空对象(而不是原始文件内容).
细节:
file_id项目的图像字段时有效,但不能从文件附件(在我的情况下为pdf文件)中使用./item/app/{app_id}/filter获取项目列表时,属性file_count已设置,但不是files.我必须/item/{item_id}单独要求获得files包含在响应中的属性,不知道为什么.问题:您知道问题是什么,以及如何下载原始附件?
编辑:aditionnal信息
如果我使用以下命令请求单个文件元数据:
podio.request('get', '/file/1234').then(console.log);
Run Code Online (Sandbox Code Playgroud)
我得到一个文件JSON对象,其中包含许多字段,但不包含文件内容:
{
...
link: 'https://files.podio.com/1234',
file_id: 1234,
...
}
Run Code Online (Sandbox Code Playgroud)
正如我对@stengaard的评论中所述,如果我尝试为上述链接请求API,则响应如下:
{ [PodioNotFoundError: [object Object]]
message:
{ error_parameters: {},
error_detail: null,
error_propagate: false,
request:
{ url: 'http://api.podio.com/1234',
query_string: '',
method: 'GET' },
error_description: 'No matching operation could be found. The path \'/1234\' was not found..',
error: 'not_found' },
status: 404,
url: …Run Code Online (Sandbox Code Playgroud) 在Loopback文档初始化应用程序时,有两件事:
第一:
Loopback.boot()根据json定义文件或给定选项加载数据源和模型,然后从models /和boot /目录加载所有js文件
然后 :
"不要在多个文件中使用app.boot()和app.model(name,config)进行组合,因为它可能导致模型由于竞争条件而未定义.为避免这种情况,请使用app.boot()确保所有模型作为模型定义的一部分传递."
这两者似乎不矛盾吗?
我有许多模型要定义,我不想在一个巨大的json文件中定义,因此想要在js每个模型中放置一个文件,models/在启动时加载所述目录.
我目前所做的是定义一个模型,models/ExampleModel.js如下所示:
var properties = {
fieldOne: { type: String, required: true },
otherField: { type: Number }
};
var options = {
relations: {
collections: {
type: "belongsTo",
model: "user"
}
}
};
var Model = require('loopback').Model;
module.exports = Model.extend('ExampleModel', properties, options);
Run Code Online (Sandbox Code Playgroud)
问题是:在期间boot(),模型已加载,但未附加到应用程序或任何数据源.它没有暴露给REST API.
我尝试了一个小的补充,models.json以在应用程序中启用该模型:
"examplemodel": {
"options": …Run Code Online (Sandbox Code Playgroud) 我尝试在 React JS 中映射嵌套的 JSON。
我的 JSON 数据是这样的,
"beautifuldata": [
{ "id":"1", "name":"a"},
{ "id":"2", "name":"b"},
{ "id":"3", "name":"c"},
{ "id":"4", "name":"d"},
{ "id":"5", "name":"e"},
{ "id":"6", "name":"f"},
{ "id":"7", "name":"g"}]
Run Code Online (Sandbox Code Playgroud)
这些数据来自一个 API。我可以将我的数据写入控制台。但是当我尝试进入内部时一切都出错了。例如,我想从我的 JSON 数据中获取 id,
我试试这个
[beautifuldata].map(x => console.log(x));
Run Code Online (Sandbox Code Playgroud)
此代码行提供了所有数据,
[beautifuldata].map(x => console.log(x.id));
Run Code Online (Sandbox Code Playgroud)
这段代码行给了我未定义的。我想访问我的 JSON 中的所有数据。我错过了什么?
javascript ×4
firebase ×3
node.js ×3
babeljs ×1
css ×1
html ×1
json ×1
loopbackjs ×1
model ×1
npm ×1
performance ×1
podio ×1
react-hooks ×1
strongloop ×1
web-worker ×1
word-wrap ×1