আমি এই ছাপে ছিলাম যে অ্যাঙ্গুলার টেম্পলেটগুলির মধ্যে অ্যাঙ্কর ট্যাগগুলির href বৈশিষ্ট্যে উপস্থিত URL গুলি পুনরায় লিখবে, যেমন তারা এইচটিএমএল 5 মোড বা হ্যাশবাং মোডে কাজ করবে work অবস্থান পরিষেবা ডকুমেন্টেশন বলতে চাই যে এইচটিএমএল লিংক rewriting hashbang অবস্থা যত্ন নেয় বলে মনে হয়। আমি এইভাবে প্রত্যাশা করব যে যখন এইচটিএমএল 5 মোডে নয়, হ্যাশগুলি beোকানো হবে এবং HTML5 মোডে থাকবে না।
তবে, মনে হয় কোনও পুনর্লিখনই হচ্ছে না। নিম্নলিখিত উদাহরণটি আমাকে কেবল মোড পরিবর্তন করতে দেয় না। অ্যাপ্লিকেশনটির সমস্ত লিঙ্কগুলি হাতে লিখে পুনরায় লিখতে হবে (বা রানটাইমের সময় কোনও ভেরিয়েবল থেকে প্রাপ্ত।) মোডের উপর নির্ভর করে আমাকে সমস্ত ইউআরএল নিজেই লিখতে হবে?
আমি কোনও ক্লায়েন্ট-সাইড url পুনরায় লেখার জন্য কৌণিক 1.0.6, 1.1.4 বা 1.1.3 এ চলছে দেখতে পাচ্ছি না। দেখে মনে হচ্ছে যে সমস্ত href মানগুলি # / hashbang মোডের জন্য এবং / html5 মোডের জন্য চাপানো দরকার।
পুনর্লিখনের জন্য কিছু কনফিগারেশন প্রয়োজন? আমি কি দস্তাবেজগুলি ভুলভাবে লিখছি? নির্বোধ কিছু করছে?
এখানে একটি ছোট উদাহরণ:
<head>
<script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.1.3/angular.js"></script>
</head>
<body>
<div ng-view></div>
<script>
angular.module('sample', [])
.config(
['$routeProvider', '$locationProvider',
function ($routeProvider, $locationProvider) {
//commenting out this line (switching to hashbang mode) breaks the app
//-- unless # is added to the templates
$locationProvider.html5Mode(true);
$routeProvider.when('/', {
template: 'this is home. go to <a href="https://stackoverflow.com/about"/>about</a>'
});
$routeProvider.when('/about', {
template: 'this is about. go to <a href="https://stackoverflow.com/"/>home</a'
});
}
])
.run();
</script>
</body>
সংযোজন: আমার প্রশ্নটি পুনরায় পড়ার সময়, আমি দেখতে পাচ্ছি যে আমি এবং পুনর্লিখনটি কী করতে চেয়েছিলাম সে সম্পর্কে অনেক পরিষ্কার ছাড়াই আমি "পুনর্লিখন" শব্দটি ব্যবহার করেছি। প্রশ্ন হল কিভাবে পেতে হয় কৌণিক URL গুলি পুনর্লিখন যখন এটি পাথ উপস্থাপনা এবং এটি দুটি মোড জুড়ে অবিশেষে জাতীয় কোডে পাথ ব্যাখ্যা পেতে কিভাবে। এটা না কিভাবে ওয়েব সার্ভার HTML5 এর সাথে সামঞ্জস্যপূর্ণ অনুরোধের rewriting করতে কারণ সম্পর্কে।