Машинопись не может разрешить css ярлык локатора ('$') знак доллара - PullRequest
0 голосов
/ 17 июня 2020

Я использую транспортир в течение некоторого времени, и сейчас мы переходим с js на машинописный текст.
Мы привыкли использовать ярлык для локаторов. Например:

$('[test-id="generate2"]').click()

вместо:

element(by.css('[test-id="generate2"]')).click()

Как описано в документации по транспортиру:
https://www.protractortest.org/# / locators
"При использовании CSS Селекторы в качестве локатора, вы можете использовать обозначение ярлыка $ (): «

Однако при попытке скомпилировать его в машинописном тексте я получаю следующую ошибку:
Ошибка: TSError: ⨯ Невозможно скомпилировать TypeScript:
ошибка TS2592: не удается найти имя '$'. Вам нужно установить определения типов для jQuery? Попробуйте npm i @types/jquery, а затем добавьте jquery в поле типов в вашем tsconfig.

ну, это не jquery, поэтому я не буду пробовать вышеуказанное предложение.
Однако я попробовал оба :

npm install @types/protractor
npm install @types/jasmine

, но они не решили мои проблемы.

Есть идеи, как решить?
10x

1 Ответ

0 голосов
/ 17 июня 2020

Это потому, что когда вы пишете транспортир + машинописный текст, вам нужно использовать для этого импорт:

import {$} from 'protractor'

, а также, если вы хотите использовать другие глобальные параметры транспортира:

import {$, $$, browser, ExpectedConditions as EC } from 'protractor'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...