ค้นหาเว็บไซต์

typescript - การบูตสแตรป Angular 2 บนองค์ประกอบ DOM เหมือนใน Angular 1


เป็นไปได้หรือไม่ที่จะ bootstrap Angular 2 บน DOM element เหมือนกับ Angular 1? ใน Angular 1 นี่ทำให้สามารถเปลี่ยน tag title ใน <head> ได้ ตัวอย่าง ใน Angular 2 ดูเหมือนว่าคุณต้องเพิ่ม my-app ไปที่ <html> tag ฉันได้สร้าง plunker ที่คุณสามารถ bootstrap ทั้ง Angular 1 และ Angular 2 พร้อมกันได้

แองกูลาร์ 1

index.html

<body>
  <div ng-controller="MainCtrl">
    <h2>Hello {{name}}</h2>
  </div>
</body>

app.js

angular.element(document).ready(function() {
  angular.bootstrap(document.documentElement, ['plunker']);
});

แองกูลาร์ 2

index.html

<body>
  <my-app>Loading...</my-app>
</body>

main.ts

import {bootstrap} from 'angular2/platform/browser';
import {App} from './app';

bootstrap(App, [])
  .catch(err => console.error(err));

คำตอบ #1

สำหรับการเปลี่ยนชื่อเรื่องมีบริการชื่อเรื่อง คุณสามารถฉีดมันและใช้มันเพื่อจัดการชื่อเรื่องได้

มีแผนที่จะสนับสนุนโดยตรงในการแก้ไขมากกว่าชื่อเรื่องเพียงอย่างเดียว

การเพิ่ม my-app ลงใน <html> จะไม่ทำงานได้ดีใน Angular เพราะมันจะลบ HTML ที่อยู่ภายในแท็กที่ตรงกับตัวเลือกของคอมโพเนนต์รากของคุณ