2016-07-11 18 views
3

Ich installierte die folgenden über Bower:Verwendung von Vue JS mit Require JS?

  • jQuery 3.1.0
  • Vue 1.0.26
  • Require.js 2.2.0

Aber wenn ich meine Seite laden, „Vue " ist nicht definiert.

Ich versuchte var vue = require('Vue') und so, aber es scheint nicht zu funktionieren.

Vue sagt, es ist ein AMD-Modul und so ist Require.js ... Was fehlt mir?

+0

Sie fehlen Require.js :) – gurghet

+2

'var vue = require ('Vue')' ist nicht Require.js Syntax - es ist CommonJS Syntax, wie von Nodejs auf der Serverseite verwendet oder Build Tools wie browserify oder webpack auf der Client-Seite. Sie sollten sich darüber informieren, wie Requirejs und AMD-Module tatsächlich funktionieren und ob Sie das wollen/brauchen. –

Antwort

6

var vue = require('Vue') wird nicht von selbst funktionieren. Entweder Sie:

  1. es Wechsel in der Form von require, die einen Rückruf nimmt:

    require(['Vue'], function (vue) { 
        // code that uses Vue 
    }); 
    
  2. Oder Ihr require Anruf in einem define Anruf setzen:

    define(function (require) { 
        var vue = require('Vue'); 
    }); 
    

Als Linus Borg pointed out, require wi Eine einzelne Zeichenfolge ist die CommonJS-Syntax, die von RequireJS nur unterstützt wird, wenn sie in den an define übergebenen Rückrufen angezeigt wird. (Siehe this.)