2016-04-08 17 views
-1

Aşağıdakilerden dolayı marbleApp modülünü başlatılamadı: Hata: [$ injector: nomod] 'marbleApp' Modülü mevcut değil! Ya modül adını yanlış yazdınız ya da yüklemeyi unutmuşsunuz. Bir modül kaydediyorsanız, bağımlılıkları ikinci argüman olarak belirtin.

Hemen hemen her gönderiyi okudum ve dokümanlar arandım, ancak uygulamam modülüm yüklenmediğinden çalışmayacak. Kodda düzgün çalışmasını engelleyen herhangi bir hata bulabilir mi?

Index.html:

<!DOCTYPE html> 
    <html ng-app="marbleApp"> 
    <head> 
     <title>Marble.com AngularMongo</title> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"/> 
     <!--Import materialize.css--> 
     <link href="http://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> 
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.6/css/materialize.min.css" media="screen,projection"/> 
     <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.3/angular.js"></script> 
     <script src="app.js"></script> 

    </head> 

    <body> 

     {{"anot" + "her test"}} 

     <nav style="background-color: #d56324!important"> 
     <div class="nav-wrapper"> 
      <form action="/cosmicblack" method="GET"> 
      <div class="input-field"> 
       <input id="search" type="search" required placeholder="Search"> 
       <label for="search"><i class="material-icons">search</i></label> 
       <i class="material-icons">close</i> 
      </div> 
      </form> 
     </div> 
     </nav> 
     <br> 

     <div> 
    {{"This is " + "a test!"}} 
    {{materials.name}} 
     </div> 
    <!-- <div ng-controller="repeatCtrl">{{materials.name}}</div> --> 



    <div class="container"> 
    <div class="row"> 


     <div class="col m3" ng-controller='repeatCtrl'> 
      <a href="/cosmicblack"><div class="card"> 
      <div class="card-image small"> 
       <img src="http://marble.com/uploads/materials/499/300X300/thumbnail/Cosmic-Black_APeruB9I056YsF3mZ0sT.jpg"> 
       <span class="card-title" ng-bind="materials.name"></span> 
       </div> 
      </div> 
      </a> 
     </div> 


     </div> 
    </div> 







     <!--Import jQuery before materialize.js--> 

     <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.6/js/materialize.min.js"></script> 


    </body> 
    </html> 

app.js:

var app = angular.module('marbleApp', []); 

app.controller('repeatCtrl', function($scope) { 
    $scope.materials = [ 
     {name: 'Cosmic Black'} 
    ];  
}); 

server.js: Ben senin gibi aynı kodu kopyaladıktan

console.log('May Node be with you'); 

var express = require('express'); 
var bodyParser = require('body-parser'); 
var app = express(); 
var mongoose = require('mongoose'); 

mongoose.connect('mongodb://localhost/test'); 
var db = mongoose.connection; 

app.use(bodyParser.urlencoded({extended: true})) 

app.get('/', (req, res) => { 
    res.sendFile(__dirname + '/index.html'); 
}); 



app.get('/cosmicblack', (req, res) => { 
    var cursor = db.collection('materials').find(); 
    db.collection('materials').find({"id": "499"}).toArray(function(err, results) { 
     console.log(results); 
    }); 
    db.collection('materialphotos').find({"material_id": "499"}).toArray(function(err, results2) { 
     console.log(results2); 
    }); 
    res.redirect('/'); 
}); 



app.listen(3000,() => { 
    console.log('Running app.js on 3000'); 
}); 
+0

Kodunuz benim için çalışıyor. Ben bir sorun görmüyorum. – Danda

cevap

0

ve bunun için çalışır ben mi. Bu bin'a bir göz atın. Açısal olarak nomod hatası için olağan neden, angular.js ya da uygulamanızın bağımlılıklarının herhangi biri doğru yüklenmemiş uygulama modülünüzün düzgün yüklenmemesine neden olmasıdır

+0

İfade sınamaları üzerinde çalışır, ancak kod ng-controller = "repeatCtrl" ye ulaştığı zaman, $ kapsam nesnesinden material.name vermesi gerekir. Sadece ismi göstermiyor, aynı zamanda ifade bile hiç ortaya çıkmıyor. – MattP

+0

Hatanız, '.name 'dizisine' $ scope.materials' dizisinden erişmeye çalıştığınız oldu. '{{Materials [0] .name}}' kullanmayı deneyin. Ben aynı –

+0

ile bin güncelledim Kodu çalıştırdığınızda, sadece Chrome'da açmak mı? Node.js/express sunucumda bir sorun olabileceğini düşünüyorum. Sunucumu çalıştırdığımda ve localhost'a gittiğimde, kod çalışmıyor. Ama sadece tarayıcıda doğrudan açtığımda, iyi çalışıyor. Neden böyle bir fikrin var ki? – MattP

İlgili konular