首页 » PHP教程 » php引用elementui技巧_Vuejs elementui 扫盲做事端对大年夜前端的扫盲

php引用elementui技巧_Vuejs elementui 扫盲做事端对大年夜前端的扫盲

访客 2024-12-13 0

扫一扫用手机浏览

文章目录 [+]

node.js是对Chrome V8引擎进行了封装,是一个能让JavaScript运行在做事真个开拓平台,它让JavaScript成为与PHP、Python、Perl、Ruby等做事端措辞不相上下的脚本措辞。

2. 运行一个helloworld.js

# 查看node的版本$ node -v$ cat helloworld.jsconsole.log("Hello Node.js");$ node helloworld.jsHello Node.js3. 运行一个大略的http做事3.1 index.js

// 1、加载http模块var http = require('http');// 2、创建一个http做事工具var server = http.createServer();// 3、监听用户的要求事宜(request事宜)// 回调函数中有两个参数// request 工具 包含用户要求报文中所有内容,通过request工具可以获取所有用户提交过来的数据// response 工具 用来向用户相应一些数据,当做事器要向客户端相应数据的时候必须利用response工具server.on('request', function (req, res) { res.setHeader('Content-Type', 'text/html; charset=utf-8'); var url = req.url; res.write('<h1> web http server <br/> request url :' + url + ' </h1>'); // 对付每一个要求,做事器必须结束相应,否则,客户端(浏览器)会一贯等待做事器相应结束 res.end();});// 4、启动做事server.listen(8080, function () { console.log('做事器启动了,请访问:http://localhost:8080');});3.2 运行index.js

$ node index.js3.3 在浏览器上访问http://localhost:8080

php引用elementui技巧_Vuejs  elementui 扫盲做事端对大年夜前端的扫盲

三:npm1. 简介

在传统的前端开拓中我们会常常引入jquery、bootstrap、echarts等js插件,我们首先去插件的每个官网去下载下来,然后放到自己前端工程中static/js目录下,我们每引用一个插件都要辞官网下载,然后将下载的插件拖到工程中来,美国的一个程序员Isaac Z. Schlueter就做够了这种机器运动,想简化这个流程,于是做了这样一件事:

php引用elementui技巧_Vuejs  elementui 扫盲做事端对大年夜前端的扫盲
(图片来自网络侵删)
买了台做事器作为代码仓库(registry), 用于存放被共享的代码发邮件分别关照各大JS插件作者(如jQuery的作者、bootstrap的作者、Vue的作者、element-ui的作者等等)让他们利用npm publish 命令将自己的JS插件提交到registry中用户如果想利用某个JS插件可以先在package.json中配置一些须要安装的插件名称和对应的版本号(依赖dependency),然后通过npm install命令来下载它们,下载下来的插件自动放在node_modules目录下面

这套思想和maven是完备一样的,熟习maven或者gradle的也就自然理解npm了,只不过npm用于js,maven用于java,都是作者先将共享的代码放到某个公共的代码仓库,用户先在配置文件中配置好要利用的依赖,然后通过一个命令就能下载下来。

|仓库 | npm | maven |

|----------|:-------------:|:------:|

| 代码仓库 | registry | repository |

| 仓库地址 | http://registry.npmjs.org | https://mvnrepository.com |

| taobao镜像 | https://registry.npm.taobao.org | http://maven.aliyun.com/nexus/content/groups/public |

| 配置文件 | package.json"dependencies": {"vue": "^2.5.13"} | pom.xml<dependencies><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.6</version></dependency><dependencies>|

| 软件 | npm(node package manager) | apache-maven |

| 下载命令 | npm install | mvn install |

| 打包天生的目录 | dist | target |

npm: Node Package Manager, 一种用Node.js开拓的工具用于发布插件到仓库和从插件仓库中下载插件的工具,一种用于共享JS代码的工具。

2. 如何安装npm

由于node.js当时也短缺一个包管理器,npm也是利用node.js开拓的,这个工具利用的人较少,后来node.js的作者和npm的作者沟通一下将npm作为node.js包管理器,内置到node.js中,后来由于node.js大火,npm利用的人也越来越多,越来越多的JS插件通过npm被共享,现在险些常用的插件都能在npm中找到,现在的npm已经发展成为前端共享代码的标准了。
由于npm已经内置于node.js当中了,以是安装了node.js也就安装了npm, 可以通过node -v 和 npm -v 分别查看对应的版本。

3. 如何天生package.json文件

npm init : 用于天生一个根本的package.json文件,里面包含名称、版本号、描述、主文件、作者、协议等

package.json

{ "name": "platform-webapp", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC"}四:webpack1. 简介

传统的前端一样平常会html、javascript、css这三样东西就够了。
当代的前端发展迅猛,引入了TypeScript、SCSS、LESS、stylus(CSS预处理器)等技能,供应了更丰富的特性,提高了开拓效率,但是引入的这些技能不能直接被浏览器解析,须要一个东西将浏览器不能解析的代码翻译成浏览器可以直接解析代码,这便是webpack的浸染。

TypeScript是JavaScript类型的超集(大略的说便是对JavaScript的封装),供应更加丰富的特性(在JavaScript上添加了可选的静态类型和基于类的面向工具编程),而且可以编译成纯JavaScriptECMAScript:ECMAScript是标准,JavaScript是ECMAScript的实现,ECMAScript也在快速发展,引入了更多的语法新特性等。
个中ECMAScript6利用较多,现在ECMAScript8已经发布了。
SCSS: SCSS即是SASS的新语法,是Sassy CSS的简写,是CSS3语法的超集,也便是说所有有效的CSS3样式也同样适宜于SASS。
SASS是CSS3的一个扩展,增加了规则嵌套、变量、稠浊、选择器继续等等。
通过利用命令行工具或WEB框架插件把它转换成标准的、格式良好的CSS代码。
less: Less 是一门 CSS 预处理措辞,它扩展了 CSS 措辞,增加了变量、Mixin、函数等特性,使 CSS 更易掩护和扩展。
Less 可以运行在 Node 或浏览器端。
stylus:文件后缀是. styl 的这个哥们儿学名叫 stylus,是 CSS 的预处理框架。
stylus 给 CSS 添加了可编程的特性,也便是说,在 stylus 中可以利用变量、函数、判断、循环一系列 CSS 没有的东西来编写样式文件,实行这一套骚操作之后,这个文件可编译成 CSS 文件。

webpack可以看做是模块打包机:它做的事情是,剖析你的项目构造,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展措辞(TypeScript、SCSS等),并将其打包为得当的格式以供浏览器直策应用。
随着webpack的发展,webpack支持ECMAScript6、ECMAScript7、ECMAScript8等。
随着webpack的发展,webpack不仅仅用来编译(翻译)代码,也集成了更多的功能,比如:

热加载:修正了代码然后保存,浏览器会自动刷新压缩文件:压缩图片,字体, 脚本文件等插件(plugin):webpack打包时可以实行某个插件,掌握webpack打包时的某个过程,这种插件机制和maven中的插件事理完备一样

webpack终极发展成为:前端项目的构建工具。

模块(module)化便是把繁芜的运用程序细分为较小的文件,在webpack中统统都是模块,js、css、图片、字体等待都可称为模块。

webpack文档

2. webpack安装

webpack可以通过npm安装,安装后会天生一个node_modules目录

# npm初始化,直接回车即可,天生package.json文件npm init# npm全局(global)安装npm install -g webpack # 切换到项目根目录,安装到你的项目目录中, 天生node_modules目录和package-lock.json文件# 把稳:全局安装的浸染是可以在命令行中直策应用命令,效果类似于环境变量的浸染# 全局安装后,仍旧须要在自己的项目中再次安装# --save-dev 将依赖保存到package.json中的devDependencies中# --save 将依赖保存到package.json中的dependencies中npm install --save-dev webpack

# webpack 打包命令webpack <源文件> -o <目标文件>webpack src/index.js -o dist/index.bundle.js# 如果报错Error: Cannot find module 'webpack-cli',实行下面命令npm install webpack-cli -g3. webpack中的主要功能3.1 devtool

devtool: "eval-source-map" webpack打包后的文件可读性非常低,不利于调试,利用devtool可以天生对应的源码便于调试。
利用eval打包源文件模块,在同一个文件中天生干净的完全的source map。
这个选项可以在不影响构建速率的条件下天生完全的sourcemap,但是对打包后输出的JS文件的实行具有性能和安全的隐患。
在开拓阶段这是一个非常好的选项,在生产阶段则一定不要启用这个选项;

3.2 webpack-dev-server

webpack-dev-server 是一个本地开拓做事器,居于node.js实现的,利用npm run dev 后就可以利用默认的8080端口在浏览器上访问了,类似于apache的功能

3.3 loaders

loader可以让webpack有能力调用外部的脚本或工具,实现对不同格式的文件的处理,比如说剖析转换scss为css,或者把下一代的JS文件(ES6,ES7)转换为当代浏览器兼容的JS文件

css-loader 和 style-loader 便是用来处理样式的。

3.4 babel(很主要)

Babel实在是一个编译JavaScript的平台,它可以编译代码帮你达到以下目的:

让你能利用最新的JavaScript代码(ES6,ES7等待),而不用管新标准是否被当前利用的浏览器完备支持;让你能利用基于JavaScript进行了拓展的措辞,比如React的JSX;3.5 plugins

插件(Plugins)是用来拓展Webpack功能的,它们会在全体构建过程中生效,实行干系的任务。

Loaders和Plugins常常被弄混,但是他们实在是完备不同的东西,可以这么来说,loaders是在打包构建过程中用来处理源文件的(JSX,Scss,Less..),一次处理一个,插件并不直接操作单个文件,它直接对全体构建过程其浸染。

Webpack有很多内置插件,同时也有很多第三方插件,可以让我们完成更加丰富的功能。

常用的插件:

HtmlWebpackPluginHot Module Replacement(HMR) 热加载:许可你在修正组件代码后,自动刷新实时预览修正后的效果clean-webpack-plugin 去除build文件中的残余文件OccurenceOrderPlugin :为组件分配ID,通过这个插件webpack可以剖析和优先考虑利用最多的模块,并为它们分配最小的IDUglifyJsPlugin: 压缩JS代码ExtractTextPlugin:分离CSS和JS文件3.6 webpack配置文件

如果与输入干系的需求,找entry(比如多页面就有多个入口)如果与输出干系的需求,找output(比如你须要定义输出文件的路径、名字等等)如果与模块寻址干系的需求,找resolve(比如定义别名alias)如果与转译干系的需求,找loader(比如处理sass处理es678N)如果与构建流程干系的需求,找plugin(比如我须要在打包完成后,将打包好的文件复制到某个目录,然后提交到git上)五:vue.js是什么5.1 简介它是一个轻量级的MVVM框架。
利用 数据驱动+组件化 来开。
数据双向绑定(当修正视图时数据也会赋值给model,当变动model的时候也会反应到视图上)。

页面上每个独立的可视或者可交互的区域均视为一个组件,每个组件对应一个工程目录(文件夹),组件所须要的各种资源尽可能的都放在这个目录下就近掩护(即将模板、样式、js等都写在一个.vue文件中),组件可以嵌套自由组合,形成完全的页面。

5.2 vue脚手架初始化项目

# 1.安装vue-cli脚手架(用于初始化项目)$ npm install -g vue-cli$ 2. 创建项目$ vue init webpack <project name># 3. 安装cnpm(此步骤不是必须的)# 有些npm有些资源被屏蔽或者是国外资源的缘故原由,常常会导致用npm安装依赖包的时候失落败,以是还须要npm的海内镜像—cnpmnpm install -g cnpm –registry=http://registry.npm.taobao.org# 4. 安装依赖包$ cd <project name># cnpm 须要单独安装,如果没有cnpm可以利用npm来代替$ cnpm install# 5. 启动程序就可以在浏览器访问$ npm run dev# 6. 在浏览器访问localhost:80805.3 脚手架目录构造

build : webpack干系的配置config:webpack干系的配置,index.js中可以配置做事的端口,默认是8080, useEslint默认是true,当启动检讨代码格式时可以设置为falsenode_module : npm install安装的依赖代码库src : 源码文件,开拓都会在该目录下进行assets: 存放一些静态资源components:组件,存放.vue文件,每个组件分为三部分:template、script、stylerouter:路由,配置url路径对应的组件App.vuemain.js :entry入口文件static : 存放一些静态资源test:单元测试干系.babelrc: babel编译的干系配置.editorconfig : 编辑器干系的配置(比如字符集、缩进的空格等).eslintignore : 配置须要或略的路径,一样平常build、config、dist、test等目录都会配置忽略.eslintrc.js : 配置代码格式风格检讨规则, 如每行代码是否逼迫利用分号; 代码缩进是利用空格还是tab等,在启动工程的时候会进行严格的检讨,如果不知足格式就会启动失落败,紧张是让所有开拓职员保持强同等的开拓风格。
紧张是extends: ["standard"]、rules等配置。
.gitignore : git或略的文件index.html : 入口文件,编译时会将其它代码插入到index.html中package.json : 项目的配置文件,scripts用于配置的脚本,个中dev和build非常常用,启动项目便是利用npm run dev命令,这里的dev便是scripts中的dev, npm start便是对npm run dev的简写;devDependencies用于编译时的依赖,开拓时须要,上线时用不到;

5.4 基本流程在掌握台中输入npm run dev,然后在浏览器上访问http://localhost:8080/#/helloworld通过router/index.js配置好的/helloworld路径(path)找到对应的组件(component) HelloWorld.vue

import Vue from 'vue'import Router from 'vue-router'import HelloWorld from '@/components/HelloWorld'Vue.use(Router)export default new Router({ routes: [ { path: '/helloworld', name: 'HelloWorld', component: HelloWorld } ]})HelloWorld.vue 便是要访问的内容

<template> <div class="hello"> <h1>{{ msg }}</h1> </div></template><script>export default { name: 'HelloWorld', data () { return { msg: 'HelloWorld.vue' } }}</script><!-- style 标签省略了 -->HelloWorld.vue的内容将会更换到App.vue中<router-view/>

<template> <div id="app"> <img src="./assets/logo.png"> <router-view/> </div></template><script>export default { name: 'App'}</script><!-- style 标签省略了 -->App.vue的内容将会注入到index.html中的body标签里

<!DOCTYPE html><html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <title>platform-webapp</title> </head> <body> <div id="app"></div> <!-- built files will be auto injected --> </body></html>终极的效果如图

六:集成Element6.1 安装element-ui

# 切换到项目根目录$ cd <project root dir># 安装element-ui, 安装后package.json中dependencies就会增加element-ui依赖$ cnpm i element-ui -S 6.2 在main.js中配置element-ui

在main.js中增加导入和让Vue利用ElementUI

import Vue from 'vue'import App from './App'import router from './router'// 导入element-uiimport ElementUI from 'element-ui'Vue.config.productionTip = false// Vue利用ElementUIVue.use(ElementUI)/ eslint-disable no-new /new Vue({ el: '#app', router, components: { App }, template: '<App/>'})6.3 安装依赖

cnpm install

6.4 利用element-ui

HelloWorld.vue

<template> <div class="hello"> <h1>{{ msg }}</h1> <el-button type="primary">紧张按钮</el-button> <el-input-number v-model="num" :min="1" :max="10" @change="handleChange"></el-input-number> </div></template><script>export default { name: 'HelloWorld', data () { return { msg: 'HelloWorld.vue', num: 5 } }, methods: { handleChange(value) { console.log(value) } }}</script><!-- 样式省略 -->6.5 重新启动,访问

npm run dev

欢迎关注Java实用技能,本账号将坚持每天发布一篇事情中常用实用的技能。

标签:

相关文章

大数据时代,介绍洗澡的智慧与未来

随着科技的飞速发展,大数据已经渗透到了我们生活的方方面面。在日常生活中,洗澡这件看似普通的事情,也正悄然发生着变革。本文将从大数据...

PHP教程 2024-12-15 阅读0 评论0

phpdate24进制技巧_PHP date 函数

PHP date( 函数PHP date( 函数可把韶光戳格式化为可读性更好的日期和韶光。韶光戳是一个字符序列,表示一定的事宜...

PHP教程 2024-12-15 阅读0 评论0

大数据时代,彭子如何引领企业创新与发展

随着互联网技术的飞速发展,大数据已经成为当今时代最具影响力的关键词之一。在这样一个大数据时代,我国企业家彭子凭借其敏锐的洞察力和卓...

PHP教程 2024-12-15 阅读0 评论0

大数据时代,朱东引领智慧未来

随着互联网技术的飞速发展,大数据已经渗透到了我们生活的方方面面。在这个信息爆炸的时代,如何从海量数据中挖掘有价值的信息,成为了各行...

PHP教程 2024-12-15 阅读0 评论0