#Fresh #Preact #Deno
[[Preact]]、[[Deno]]をそれぞれ使用していることにより発生するエラーっぽい。
## 事象
以下のように[[Fragment]]の省略形をrenderするとエラーになる。
```js
return (
<>
<div>hoge</div>
<div>hoge</div>
</>
)
```
エラーメッセージその1。
```
An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments.deno-ts(17017)
```
エラーメッセージその2。
```
Cannot find name 'React'. Did you mean 'preact'?deno-ts(2552)
```
## 原因
1つ目のエラーメッセージは[[@jsxFrag]]の[[プラグマ]]が指定されていないから。[[Deno]]の環境下で[[JSX]]を使う場合に必要そう。
2つ目のエラーメッセージは[[@jsxFrag]]の指定が不十分だから。
## 解決方法
ファイルの冒頭に以下を追加する。
```ts
/** @jsxFrag Fragment */
import { Fragment } from "preact";
```
[[Fragment]]のインポートや、[[@jsxFrag]]のあとの`Fragment`が抜けているとエラーになる。
## 参考
- [Cannot find name 'h' with ts\-loader · Issue \#3180 · preactjs/preact](https://github.com/preactjs/preact/issues/3180)