вы можете использовать importmap
в качестве стандартного нового способа для достижения вашей цели и импортировать модуль npm в файл модуля js, не записывая полный путь, например node_modules/react@16.x.x/index.js
, и просто пишите import React from 'react'
, как ранее мы писали в веб-пакете. или накопительный.
чтобы добиться этого после установки jspm и установки необходимого пакета с помощью jspm, сначала запустите следующую команду:
jspm map -o importmap.json --flat-scope
он сгенерирует текущую карту импорта для модулей jspm, а затем создаст файл, содержащий данные карты импорта. использование --flat-scope необходимо, потому что в настоящее время chrome не поддерживает области импорта карт. Вы должны получить JSON-файл и вставить его в HTML-файл. сначала создайте файл bootstrap.js
и вставьте в него следующий код:
class bootstrap{
constructor(){
this.initMapper().then(()=>{
this.lunchApp();
})
}
async initMapper() {
document.head.appendChild(Object.assign(document.createElement('script'), {
type: 'importmap',
innerHTML: await (await fetch('/importmap.json')).text()
}));
}
lunchApp(){
import('/Client/Assets/js/index.js');
}
}
var app = new bootstrap();
затем добавьте bootrstrap.js
в файл index.html
:
<script defer src="/Client/Assets/js/bootstrap.js"></script>