Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1

    Da script presente sul mio libro di testo: [Error: Mismatched anonymous define() module]

    Sul libro che sto leggendo si riporta questo codice di esempio per capire Define() e Require() ma lo script non funziona e va in errore. Non riesco in nessun modo a capirne le cause:
    CODICE:
    codice:
    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>Esercizi di Javascript</title>
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <script src="jquery-2.1.3.min.js"></script>
            <script src="qunit-1.17.1.js"></script>
            <script src="underscore-min.map"></script>
            <script src="require.js"></script>
            <link href="qunit-1.17.1.css" rel="stylesheet" type="text/css">
        </head>
        <body>
            <!--
            <section>
                <h1 id="qunit-header">QUnit Test Suite</h1>
                <h2 id="qunit-banner"></h2>
                <div id="qunit-testrunner-toolbar"></div>
                <h2 id="qunit-userAgent"></h2>
                <ol id="qunit-tests"></ol>
            </section>
            -->
            <?php
            // codice php eventuale
            // console.log("")
            ?>
            <p>In questa pagina vengono riportati gli esempi descritti sul testo di Eric Elliot</p>
            <script src="newok_equal.js">
                //Scrive sulla console il risultato della funzione ok() di test().
            </script>
            <!--<script src="stampit.js"></script>-->
            <script type="text/javascript">
                define(['ch04/amd1', 'ch04/amd2'],
                        function myModule(amd1, amd2) {
                            var testResults = {
                                test1: amd1.test(),
                                test2: amd2.test()
                            },
                            api = {
                                testResults: function () {
                                    return testResults;
                                }
                            };
                            return api;
                        });
                require(['ch04-amd'], function (amd) {
                    var results = amd.testResults();
                    test('AMD with Require.js', function () {
                        equal(results.test1, true,
                                'First dependency loaded correctly.');
                        equal(results.test2, true,
                                'Second dependency loaded correctly.');
                    });
                });
                if (typeof define === 'function') {
                    define([], function () {
                        return api;
                    });
                }
            </script>   
            <!--<script src="stampit-specs.js"></script>-->
            <br><br>
        </body>
    </html>
    ERRORE IN CONSOLE:
    codice:
    Error: Mismatched anonymous define() module: function myModule(amd1, amd2) {
                            var testResults = {
                                test1: amd1.test(),
                                test2: amd2.test()
                            },
                            api = {
                                testResults: function () {
                                    return testResults;
                                }
                            };
                            return api;
                        }
    http://requirejs.org/docs/errors.html#mismatch
    Ho provato a scaricare la libreria RequireJS da qui:
    http://requirejs.org/docs/download.html
    ed ho anche provato ad utilizzare diversi browser ma l'errore non è cambiato.
    Più pratica in futuro...

  2. #2
    Sto leggendo qui:
    http://www.html.it/articoli/require-...in-javascript/
    e qui:
    http://requirejs.org/docs/start.html
    poi ci sono anche questi esempi:
    https://github.com/volojs/create-template
    https://github.com/requirejs/example-multipage
    https://github.com/requirejs/example-multipage-shim
    però è tutto molto complicato. Non riesco a capire come vedere questo script funzionare. Un aiuto da parte vostra sarebbe molto gradito.
    Più pratica in futuro...

  3. #3
    qui trovo altro:
    http://www.lucabonaldo.it/alcune-librerie-aiutano/
    possibile che nessuno usa questa libreria e sappia darmi una soluzione?
    Più pratica in futuro...

  4. #4
    cavolo se è lunga la guida:
    http://requirejs.org/docs/api.html
    ci metterò un secolo a leggerla tutta, se ad ogni pagina del libro devo leggermi una libreria intera sono finito, neppure tra 1000 anni finisco...
    un errore grosso che ho fatto è di prendere un libro troppo avanzato per il mio livello...
    procedo ma a rilento...
    Più pratica in futuro...

  5. #5
    Ricapitoliamo velocemente tutto quanto. Il mio obiettivo è capire come funziona lo script e leggere in console il risultato che se non ho capito male dovrebbe essere "true". Il codice che sto analizzando e che sto cercando di implementare su Require.js è il seguente:
    codice:
    define(['ch04/amd1', 'ch04/amd2'],
            function myModule(amd1, amd2) {
                var testResults = {
                    test1: amd1.test(),
                    test2: amd2.test()
                },
                api = {
                    testResults: function () {
                        return testResults;
                    }
                };
                return api;
            });
    require(['ch04-amd'], function (amd) {
        var results = amd.testResults();
        test('AMD with Require.js', function () {
            equal(results.test1, console.log(true),
                    'First dependency loaded correctly.');
            equal(results.test2, console.log(true),
                    'Second dependency loaded correctly.');
        });
    });
    Non chiedo altro.
    Più pratica in futuro...

  6. #6
    prova prova, perché non riesco più a postare?
    Più pratica in futuro...

  7. #7
    ewfewf
    Più pratica in futuro...

  8. #8
    ok ora funziona
    Più pratica in futuro...

  9. #9
    Leggendo le guide che ho postato ho attuato questa implementazione:
    errore.jpg
    il cui codice nei rispettivi file è il seguente:
    script_libro_eric_elliott.php
    codice:
    <!DOCTYPE html>
    <html>
        <head>
            <title>Utilizzo della libreria Require.js</title>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <script data-main="javascript/moduli" src="javascript/librerie/require.js">
            </script>
        </head>
        <body>
            <div>Utilizzo della libreria Require.js</div>
        </body>
    </html>
    script_libro.js
    codice:
    require(['ch04-amd'], function (amd) {
        var results = amd.testResults();
        test('AMD with Require.js', function () {
            equal(results.test1, console.log(true),
                    'First dependency loaded correctly.');
            equal(results.test2, console.log(true),
                    'Second dependency loaded correctly.');
        });
    });
    main.js
    codice:
    define(['ch04/amd1', 'ch04/amd2'],
            function myModule(amd1, amd2) {
                var testResults = {
                    test1: amd1.test(),
                    test2: amd2.test()
                },
                api = {
                    testResults: function () {
                        return testResults;
                    }
                };
                return api;
            });
    configurazione.js
    codice:
    requirejs.config({
        "baseUrl": "javascript/librerie",
        "paths": {
            "moduli": "../moduli",
        },
        "shim": {
            "script_libro": {
                deps: ["jquery", "qunit"]
            }
        }
    });
    requirejs(["moduli/main"]);
    Più pratica in futuro...

  10. #10
    Anche questa soluzione mi da sempre lo stesso errore:
    Error: Script error for: moduli
    http://requirejs.org/docs/errors.html#scripterror


    javascript\librerie\jquery.js
    javascript\librerie\qunit.js
    javascript\librerie\require.js
    javascript\script_libro_eric_elliott.php

    codice HTML:
    <!DOCTYPE html>
    <html>
        <head>
            <title>Utilizzo della libreria Require.js</title>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <script data-main="javascript/moduli" src="javascript/librerie/require.js">
            </script>
        </head>
        <body>
            <div>Utilizzo della libreria Require.js</div>
        </body>
    </html>
    javascript\moduli\script_libro.js
    codice:
    define(["jquery", "qunit"],
            function myModule(amd1, amd2) {
                var testResults = {
                    test1: amd1.test(),
                    test2: amd2.test()
                },
                api = {
                    testResults: function () {
                        return testResults;
                    }
                };
                return api;
            });
    javascript\moduli\main.js
    codice:
    define(['ch04/amd1', 'ch04/amd2'],
            function myModule(amd1, amd2) {
                var testResults = {
                    test1: amd1.test(),
                    test2: amd2.test()
                },
                api = {
                    testResults: function () {
                        return testResults;
                    }
                };
                return api;
            });
    javascript\configurazione.js
    codice:
    /* global requirejs */
    requirejs.config({
        "baseUrl": "javascript/librerie",
        "paths": {
            //"nome del paths": "cartella del paths calcolata da baseUrl
            //in cui risiedono i file del progetto che non sono librerie"
            "moduli": "../moduli"
        },
        "shim": {
            //dipendenze
            //il file A per funzionare ha bisogno delle librerie B
            //"file A dentro script": "file B dentro librerie"
            "script_libro": {
                deps: ["jquery", "qunit"]
            }
        }
    });
    requirejs(["moduli/main"]);
    Più pratica in futuro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.