2016-01-12 10 views
2

Что означает эта схема/протокол? meteor: // app/.....URL-схема метеор: // приложение/..... in meteorjs

Я вижу это, когда открываю проект метеора в инструментах разработчика браузера. Все файлы скомпилированных/переполненных/мини-файлов находятся под http://localhost:3000. Однако все исходные файлы, на которые указывают исходные карты, находятся в другом каталоге, называемом meteor: // app

Когда я пытаюсь открыть эти пути в браузере (или выбрав «Открыть ссылку в новой вкладке»), он говорит, что может Не открывайте их.

Как они обслуживаются метеоритом? Как получить доступ к хром-инструментам отладки? Как хром-инструменты отладки знают, что делать с «метеор: //»?

developer tools with http://location:3000 and meteor://..app

пример .js.map файла: {"version":3,"sources":["meteor://app/password_client.js"],"names"

ответ

3

Если кто-то еще раз чудеса, как это работает .....

оригинальный исходный код может содержаться в источнике map (sourcesContent). Если вы предоставите его там, вы можете поместить любой путь в «источники», инструменты dev покажут его в своей собственной папке, как на картинке в вопросе.

Чтобы попробовать:

mkdir example 
cd example 
npm install babel-cli #needed to compile and create source map 

#create a hello world js website: 
echo "document.write('hello world') ; //spaces before ; will be removed in transpiled file" > hello.js 
echo "<script src='hello-compiled.js'></script>" > hello.html 

#create compiled version and source map 
node ./node_modules/babel-cli/bin/babel hello.js --out-file hello-compiled.js --source-maps 

cat hello-compiled.js #to see the generated map file 
sed -i 's/hello.js/sourcefiles:\/\/sourcesfiles\/hello.js/g' hello-compiled.js.map #change the local url to one with the new protocol 
cat hello-compiled.js #to see the map file after the change 
#(or just open up the file in an editor and change sources":["hello.js"] to sources":["sourcefiles://sourcefiles/hello.js"] 

rm hello.js #get rid of the original so that you don't see it in your sources 
#(you can always regenerate it with the echo command above) 

google-chrome hello.html #on ubuntu if you have chrome installed 
open hello.html #will probably work on osx 

##now look at sources in developer tools - you should see source files in theor own folder called sources 
#I had to ctrl-shift-r to see all the files 
#you should be able to add a breakpoint in the sourcefiles://sourcefiles/hello.js 
+0

приятно! Я всегда думал об этом сам. – oligofren