美文网首页
jsx的使用

jsx的使用

作者: pawn_c | 来源:发表于2019-08-26 21:35 被阅读0次

如果觉得React.createElement太过麻烦,可以使用jsx来简化

安装babel插件

cnpm i babel-core babel-loader babel-plugin-transform-runtime -D
cnpm i babel-preset-env babel-preset-stage-0 babel-preset-react -D

安装jsx语法包

cnpm i babel-preset-react -D

在根目录添加.babelrc配置文件

{
    "presets":["env","stage-0","react"],
    "plugins":["transform-runtime"]

}

配置规则

在webpack.config.js中配置规则

module:{
        //所有第三方模块的匹配规则
        rules:[
            {test:/\.js|jsx$/,use:'babel-loader',exclude:/node_modules/},
        ]
    }

配置完成后webpack.config.js完整代码如下

const path = require('path');
const HtmlWebPackPlugin = require('html-webpack-plugin');//导入 在内存中自动生成index页面的插件

//创建一个插件的实例对象
const htmlPlugin = new HtmlWebPackPlugin({
    template:path.join(__dirname,'./src/index.html'),//源文件
    filename:'index.html'//生成的内存中的首页名称
})
module.exports = {
    mode:'development', //development开发。production 发布
    plugins:[
        htmlPlugin
    ],
    module:{
        //所有第三方模块的匹配规则
        rules:[
            {test:/\.js|jsx$/,use:'babel-loader',exclude:/node_modules/},
        ]

使用


//这两个导入的时候,接收的成员名称,必须这么写
import React from 'react'//创建组件、虚拟dom元素,生命周期
import ReactDOM from 'react-dom'//把创建好的组件和虚拟dom放到页面上展示



/*
<div><h1 id = "myh1" title="this is title">hello pawn</h1></div>
*/

/*
html是最优秀的标记语言:
在js文件中,默认不能写这种类似于html的标记,否则打包会失败
可以使用babel来转换这些标签
这种在js中混合html的语法,叫做jsx语法,符合xml规范的js
但是jsx的本质还是转换成React.createElement来执行的
*/

const mydiv = <h1>hello ß1pawn</h1>

/*
参数1:要渲染的那个虚拟dom元素
参数2:指定页面上一个容器
*/
ReactDOM.render(mydiv,document.getElementById('app'))

但是输入启动命令时却报错,

npm run dev

报错内容如下


image.png

是因为安装版本问题
命令行输入

cnpm i babel-loader@7 -D

再次运行---成功

相关文章

  • react-jsx

    jsx 是类似 js 模板语法 声明 jsx 使用 jsx jsx 语法 jsx 是 js 的语法扩展,在 jsx...

  • JSX

    JSX Follow me on GitHub JSX1. 为什么会有JSX?2. JSX的基本使用2.1 JSX...

  • taro 自定义底部

    tabBar.jsx 使用index.jsx

  • learn-react之基础

    JSX tip:使用jsx必须引用react 解决方案

  • react随记1 jsx简介

    JSX简介 JSX是JavaScript的预发扩展。推荐在React中使用JSX来描述用户界面。 1.在JSX中使...

  • (React)认识React语法

    一、JSX语法 在React中,没有使用HTML标签来绘制UI,而是使用了JSX语法。 当然JSX语法中,也可以嵌...

  • React 核心概念

    JSX JSX 是一个表达式,JSX的值是一个JS对象,因此可以再if for代码块中使用JSX,也可以将JSX赋...

  • React.js(二)

    React JSX### React 使用 JSX 来替代常规的 JavaScript。JSX 是一个看起来很像 ...

  • ReactJS基础学习-01

    React JSX语法 React 使用 JSX 来替代常规的 JavaScript。 JSX 是一个看起来很像 ...

  • React基础使用部分

    init JSX JSX是Javascript的语法扩展,建议在React中配合使用JSX,可以描述UI交互,并且...

网友评论

      本文标题:jsx的使用

      本文链接:https://www.haomeiwen.com/subject/ouclectx.html