Skip to content

Nea88/Jaggi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Jaggi

Aggregator's blueprints

Manual for jaggi Jaggi Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Ρ„Π°ΠΉΠ»ΠΎΠ²/ΠΏΠ°ΠΏΠΎΠΊ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ blocks -includes -%file_name%.js %pages_folder_name% -%page_folder_name% -%page_name.blocks.js%

%file_name%.js содСрТит «настройки» ΠΎΡ‚ ΠΊΡƒΠ΄Π° ΠΈ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡƒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ Π±Ρ€Π°Ρ‚ΡŒ json, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π΅ зависимо ΠΎΡ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ (Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π² ΠΊΠΎΠ½Ρ†Π΅ json), для http ΠΈ https ΠΏΠ°ΠΏΠ°ΠΌΠ΅Ρ‚Ρ€ call ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ http ΠŸΡ€ΠΈΠΌΠ΅Ρ€: module.exports = { call : 'http', params : { url : 'https://api.twitter.com/1/trends/1.json' } }; ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ (Π² ΠΏΠΎΠ»Π΅ params) -data
-method -headers -maxRedirects -url -dataType

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Jaggi: create(): Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ пСрСдаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ call, Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ timeout (нс) Π² call ΠΏΠΈΡˆΠ΅Ρ‚ΡŒΡΡ имя ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ‹Π½ΠΈΠΌΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² Β«ΠΊΠ°ΠΊΠΈΡ… количСствах» ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 1: call : { A : { //имя call : function(_, promise) { //вызываСтся ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ promise.fulfill('A done'); }, toState : { 'A-1-res' : '.' } } } ΠŸΡ€ΠΈΠΌΠ΅Ρ€2: { call : { 'feeds' : { include : 'includes/feeds.js',//Ρ‚ΡƒΡ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ΡŒΡΡ Ρ„Π°ΠΉΠ» с описаниСм (см Π²Ρ‹ΡˆΠ΅ %file_name%.js) timeout : 10000, //Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ влоТСния call pointer : '.[:5]'//количСство Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π°Π΄ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ, Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π½ΡƒΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ } }, timeout : 10000, done : function(res, _, promise) { promise.fulfill(somefunc(res.feeds, res.users)); } } }, timeout : 20000 } ΠŸΡ€ΠΈΠΌΠ΅Ρ€3: { call : { 'top-trends' : { call : { 'trends' : { include : 'includes/trends.js', timeout : 10000, toState : { trends : '.trends[:3]' }, pointer : '.trends[:3]' },

            'tweets' : {
                deps : 'trends',  //ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ trends
                guard : 'trends',
                params : function(ctx) {
                    return { trends : ctx.state('trends') };
                },
                call : function(params) {
                    return params.trends.map(function(trend) {
                        return {
                            include : 'includes/tweets.js',
                            timeout : 10000,
                            params  : function() {
                                var res = this.__base();
                                res.data = { q : trend.query };
                                return res;
                            },
                            pointer : '.results[:3]'
                        }
                    });
                },
                timeout : 10000
            }
        },
        timeout : 10000,
        done : function(res, _, promise) {
            promise.fulfillsomefunc(res.trends, res.tweets));
        }
    }
},
timeout : 20000

};

run(): запускаСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ then(): ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ пСрСдаСтся калбэк

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published