小编Vis*_*opu的帖子

Angular 2 Http,Observables和递归请求

我有一个REST端点,它返回一个项目列表,一次最多1000个项目.如果有超过1000个项目,则响应具有HTTP状态206,并且Next-Range我可以在下一个请求中使用标题来获取更多项目.

我正在研究一个Angular 2应用程序并试图用Http和实现它Observable.我的问题是我不知道如何合并多个Observables取决于有多少页面的项目,最后返回Observable我的组件可以订阅的一个.

这是我使用当前TypeScript实现的地方:

// NOTE: Non-working example!

getAllItems(): Observable<any[]> {
  // array of all items, possibly received with multiple requests
  const allItems: any[] = [];

  // inner function for getting a range of items
  const getRange = (range?: string) => {
    const headers: Headers = new Headers();
    if (range) {
      headers.set('Range', range);
    }

    return this.http.get('http://api/endpoint', { headers })
      .map((res: Response) => {
        // add …
Run Code Online (Sandbox Code Playgroud)

observable rxjs angular2-http angular

8
推荐指数
1
解决办法
6211
查看次数

如何避免D3.js饼图中的标签重叠?

我正在使用D3.js绘制一个饼图,脚本非常简单.问题是当切片很小时,它们的标签重叠.

我有什么选择来防止它们重叠?D3.js有我可以利用的内置机制吗?

演示:http://jsfiddle.net/roxeteer/JTuej/

var container = d3.select("#piechart");
var data = [
        { name: "Group 1", value: 1500 },
        { name: "Group 2", value: 500 },
        { name: "Group 3", value: 100 },
        { name: "Group 4", value: 50 },
        { name: "Group 5", value: 20 }
    ];
var width = 500;
var height = 500;
var radius = 150;
var textOffset = 14;

var color = d3.scale.category20();

var svg = container.append("svg:svg")
    .attr("width", width)
    .attr("height", height);

var pie …
Run Code Online (Sandbox Code Playgroud)

javascript d3.js pie-chart

6
推荐指数
1
解决办法
9270
查看次数

使用 Javascript 将动态内容分享到 Facebook 新闻源的最简单方法?

我希望我的用户能够在他们的 Facebook 新闻源上分享动态内容。没有其他 Facebook 集成(例如 Facebook 登录或其他服务器端集成),因此我希望它尽可能轻量。

这就是我得到的地方,但它看起来怎么样?这似乎有效,但我不确定我是否已经想到了一切。

<button id="fb-publish">Share to Facebook</button>

<script type="text/javascript">
(function() {
    FB.init({
        appId: MY_FACEBOOK_APP_ID, cookie: true, status: true, xfbml: true, oauth: true
    });
    var fbAuth = null;
    var fbShare = function() {
        FB.ui({
            method: "feed",
            display: "iframe",
            link: "http://example.com/",
            caption: "Example.com",
            description: "Here is the text I want to share.",
            picture: "http://example.com/image.png"
        });
    };
    $("#fb-publish").click(function() {
        if (!fbAuth) {
            FB.login(function(response) {
                if (response.authResponse) {
                    fbAuth = response.authResponse;
                    fbShare();
                }
            }, {scope: 'publish_stream'});
        } else { …
Run Code Online (Sandbox Code Playgroud)

javascript share facebook facebook-like facebook-graph-api

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