Rumah > Artikel > hujung hadapan web > Bagaimana untuk mengalih keluar aksara # dalam URL di bawah AngularJS_AngularJS
AngularJS akan menggunakan tanda # untuk menghalakan URL secara lalai.
Contohnya:
http://example.com/
http://example.com/#/about
http://example.com/#/contact
Adalah mudah untuk mendapatkan URL yang bersih dan mengalih keluar tanda cincang daripada URL.
Hanya lengkapkan dua perkara.
perkhidmatan $lokasi
Dalam Angular, perkhidmatan $location akan menyelesaikan URL dalam bar alamat dan membuat perubahan pada aplikasi anda, dan begitu juga sebaliknya.
Saya amat mengesyorkan membaca dokumentasi rasmi $location Angular untuk mendapatkan pemahaman tentang perkhidmatan $location dan ciri yang disediakannya.
$locationProvider dan html5Mode
Kami akan menggunakan modul $locationProvider dan menetapkan html5Mode kepada benar.
Kami akan melakukan ini apabila anda mentakrifkan aplikasi Sudut anda dan mengkonfigurasi laluan anda.
angular.module('scotchy', []) .config(function($routeProvider, $locationProvider) { $routeProvider .when('/', { templateUrl : 'partials/home.html', controller : mainController }) .when('/about', { templateUrl : 'partials/about.html', controller : mainController }) .when('/contact', { templateUrl : 'partials/contact.html', controller : mainController }); // use the HTML5 History API $locationProvider.html5Mode(true); });
Apakah itu API Sejarah HTML5? Ia adalah cara standard untuk memanipulasi sejarah penyemak imbas menggunakan skrip Ia membolehkan Angular menukar laluan dan URL halaman tanpa memuat semula halaman tersebut. Terdapat artikel API Sejarah HTML5 yang cukup bagus.
Tetapkan 5054d5c2012ec79898c4ccca953b9e1e untuk pautan relatif
Untuk menggunakan pautan relatif sepanjang aplikasi anda, anda perlu menetapkan ace372f96ca3ec664acb3aaa2421b04c dalam 93f0f5c25f18dab9d176bd4f6de5d30e
<!doctype html> <html> <head> <meta charset="utf-8"> <base href="/"> </head>
Panggil balik untuk penyemak imbas lama
Perkhidmatan $location akan memanggil semula kaedah hashbang secara automatik untuk penyemak imbas yang tidak menyokong API sejarah penyemakan imbas HTML5.Semuanya berlaku secara telus kepada anda dan anda tidak perlu melakukan sebarang konfigurasi untuk ini. Daripada dokumentasi
Angular $location, anda boleh melihat kaedah panggil balik dan cara ia berfungsi.
Ringkasan