想用Angular的路由里面监听url变化来获取不同的ejs模版,但是当url一变化express的路由也会作出反应,想问下该怎么做才能在url变成/phone时不进入express的路由。
public/javascript/app.js
angular.module('ngApp',[])
.config(['$routeProvider',function($routeProvider) {
$routeProvider
.when('/', {templateUrl: 'pages/index',controller: 'PhoneListCtrl'})
.when(('/phone', {templateUrl: 'pages/phone-detail',controller: 'PhoneDetCtrl'}))
.otherwise({redirectTo: '/'})
}])
routes/index.js
var express = reqsuire('express');
var router = express.Router();
router.get('/pages/phone-detail', function(req, res, next) {
res.render("phone-detail", {title: '艾希'});
})
module.exports = router;
下面图片是结构,模版都在view/pages下
Dua soalan
1. Tidak kira bagaimana anda memikirkannya, angularjs dan ejs berasa berulang Jika anda menggunakan angularjs, anda boleh menggunakan html+ajax, dan jika anda menggunakan ejs, anda boleh menggunakan ejs+ajax tidak perlu menggunakan kedua-duanya.
2. Dikatakan bahawa kedua-duanya digunakan Dalam tetapan laluan angularjs, halaman yang dimuatkan secara tidak segerak memuatkan halaman anak ke dalam
<ng-view>
halaman induk, manakala ejs memaparkan keseluruhan tetingkap penyemak imbas, yang bersamaan dengan melompat muka surat , memang akan ada konflik.Penyelesaian yang boleh saya fikirkan buat masa ini ialah menggunakan ejs untuk melompat ke halaman utama, dan menggunakan ng-route untuk memuatkan sub-halaman secara tidak segerak Walau bagaimanapun, kelemahannya ialah jika tidak boleh ditetapkan dalam laluan tetapan ejs dan sudut.