не вижу переменную из консоли Chrome, но она доступна в коде - PullRequest
0 голосов
/ 21 декабря 2018

Почему переменная доступна из метода, а не из консоли браузера?

У меня есть следующий машинописный код, использующий angular6, запускаемый через ng serve в Windows 10, текущий Chrome.

import * as d3 from "d3"; // from "npm i d3 --save" version 5.7
// picking a member of d3, nothing magical about "scaleLinear" here
console.log("see", d3.scaleLinear) // it prints ok, ƒ linear() {...

// angular component code fragment below

somefunction() {
    console.log("see again", d3.scaleLinear) // it prints ok, again
    // add a break here
}

Я передаю код этой функции.В перерыве в консоли Chrome при попытке:

> console.log(d3.scaleLinear)

выдается ошибка:

VM2012:1 Uncaught ReferenceError: d3 is not defined
    at eval (eval at push../src/app/user-sel/user-sel.component.ts.UserSelComponent._resyncYSel (user-sel.component.ts:58), <anonymous>:1:13)
    at UserSelComponent.push../src/app/user-sel/user-sel.component.ts.UserSelComponent._resyncYSel (user-sel.component.ts:58)
    at UserSelComponent.push../src/app/user-sel/user-sel.component.ts.UserSelComponent.selYSel (user-sel.component.ts:166)
    at Object.eval [as handleEvent] (UserSelComponent.html:75)
    at handleEvent (core.js:21673)
    at callWithDebugContext (core.js:22767)
    at Object.debugHandleEvent [as handleEvent] (core.js:22470)
    at dispatchEvent (core.js:19122)
    at core.js:19569
    at HTMLSpanElement.<anonymous> (platform-browser.js:993)

Как я могу получить доступ к d3 в консоли напрямую?Что я упустил?Я посмотрел на старые вопросы SO по этой теме 52332640 , но не смог найти окончательного ответа.

1 Ответ

0 голосов
/ 21 декабря 2018

Если на ваших страницах есть фреймы, ваша консоль может работать не в том контексте.Существует раскрывающийся список, который позволит вам указать правильный контекст

Например, на этом снимке экрана есть два элемента IFrame.Чтобы получить доступ к переменным из скриптов, работающих в «contentIframe2», мне нужно переключить контекст

Console Context

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...