array(2) { ["docs"]=> array(10) { [0]=> array(10) { ["id"]=> string(3) "428" ["text"]=> string(77) "Visual Studio 2017 单独启动MSDN帮助(Microsoft Help Viewer)的方法" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(8) "DonetRen" ["tagsname"]=> string(55) "Visual Studio 2017|MSDN帮助|C#程序|.NET|Help Viewer" ["tagsid"]=> string(23) "[401,402,403,"300",404]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400964" ["_id"]=> string(3) "428" } [1]=> array(10) { ["id"]=> string(3) "427" ["text"]=> string(42) "npm -v;报错 cannot find module "wrapp"" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "zzty" ["tagsname"]=> string(50) "node.js|npm|cannot find module "wrapp“|node" ["tagsid"]=> string(19) "[398,"239",399,400]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400760" ["_id"]=> string(3) "427" } [2]=> array(10) { ["id"]=> string(3) "426" ["text"]=> string(54) "说说css中pt、px、em、rem都扮演了什么角色" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(12) "zhengqiaoyin" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400640" ["_id"]=> string(3) "426" } [3]=> array(10) { ["id"]=> string(3) "425" ["text"]=> string(83) "深入学习JS执行--创建执行上下文(变量对象,作用域链,this)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "Ry-yuan" ["tagsname"]=> string(33) "Javascript|Javascript执行过程" ["tagsid"]=> string(13) "["169","191"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511399901" ["_id"]=> string(3) "425" } [4]=> array(10) { ["id"]=> string(3) "424" ["text"]=> string(30) "C# 排序技术研究与对比" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "vveiliang" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(8) ".Net Dev" ["catesid"]=> string(5) "[199]" ["createtime"]=> string(10) "1511399150" ["_id"]=> string(3) "424" } [5]=> array(10) { ["id"]=> string(3) "423" ["text"]=> string(72) "【算法】小白的算法笔记:快速排序算法的编码和优化" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "penghuwan" ["tagsname"]=> string(6) "算法" ["tagsid"]=> string(7) "["344"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511398109" ["_id"]=> string(3) "423" } [6]=> array(10) { ["id"]=> string(3) "422" ["text"]=> string(64) "JavaScript数据可视化编程学习(二)Flotr2,雷达图" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "chengxs" ["tagsname"]=> string(28) "数据可视化|前端学习" ["tagsid"]=> string(9) "[396,397]" ["catesname"]=> string(18) "前端基本知识" ["catesid"]=> string(5) "[198]" ["createtime"]=> string(10) "1511397800" ["_id"]=> string(3) "422" } [7]=> array(10) { ["id"]=> string(3) "421" ["text"]=> string(36) "C#表达式目录树(Expression)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "wwym" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(4) ".NET" ["catesid"]=> string(7) "["119"]" ["createtime"]=> string(10) "1511397474" ["_id"]=> string(3) "421" } [8]=> array(10) { ["id"]=> string(3) "420" ["text"]=> string(47) "数据结构 队列_队列实例:事件处理" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "idreamo" ["tagsname"]=> string(40) "C语言|数据结构|队列|事件处理" ["tagsid"]=> string(23) "["246","247","248",395]" ["catesname"]=> string(12) "数据结构" ["catesid"]=> string(7) "["133"]" ["createtime"]=> string(10) "1511397279" ["_id"]=> string(3) "420" } [9]=> array(10) { ["id"]=> string(3) "419" ["text"]=> string(47) "久等了,博客园官方Android客户端发布" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(3) "cmt" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511396549" ["_id"]=> string(3) "419" } } ["count"]=> int(200) } 222 Vue.js+Jquery+Webpack初体验 - 爱码网

1、安装node.js运行环境,直接到官网下载相应的安装包即可,安装完后运行node -v和npm -v看下版本号

D:\web\webpack-example>node -v
v10.15.3

D:\web\webpack-example>npm -v
6.4.1

2、创建web项目,安装webpack运行环境、Vue.js和Jquery

D:\web\webpack-example>npm init -y
Wrote to D:\web\webpack-example\package.json:

{
  "name": "webpack-example",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}
npm install webpack webpack-cli --save-dev
npm install vue
npm install expose-loader --save
npm install jquery --save

执行以上命令后,生成了项目的基本目录结构

Vue.js+Jquery+Webpack初体验

3、创建src目录和源文件

Vue.js+Jquery+Webpack初体验

<!--index.html-->
<!DOCTYPE html>
<html>
<head>
	<title>Vue.js,Jquery,Webpack</title>
</head>
<body>
<div class="main" id="app">
	<div class="head" v-html="message"></div>
	<div class="content">
		<div id="menu" class="nav" v-bind:class="{nav: menuOpen, 'nav-close': !menuOpen}">
			<a class="menu-open-handler" href="javascript:;" v-on:click="openMenu">打开菜单</a>
			<a class="menu-close-handler" href="javascript:;" v-on:click="closeMenu">关闭菜单</a>
			<ul>
				<li v-for="m in menus" v-bind:id="'menu'+m.id">{{ m.text }}</li>
			</ul>
		</div>
		<div class="content-wrapper"></div>
	</div>
</div>
</body>
</html>
/*style.css*/
html, body{margin: 0; padding: 0; font-family: 'Microsoft Yahei'; height: 100%;}
a{text-decoration: none; color: grey;}
.main{width: 1200px; height: 100%; margin: 0 auto; background: #ddd; display: flex; flex-direction: column; flex: auto;}
.head{height: 60px; background: #ddd; position: relative; font-size: 2.0em;}
.content{background: pink; display: flex; flex: auto;}
.nav{width: 220px; background: silver; position: relative;}
.nav ul{list-style:none; width: 180px; margin: 30px 0; padding: 0;}
.nav ul li{cursor: pointer; width: 100%; line-height: 32px; color: grey; text-indent: 15px;}
.nav ul li:hover{color: orange; background: #ddd;}
.nav-close{width: 40px; background: silver; position: relative;}
.nav-close ul{display: none;}
.menu-open-handler{width: 90px; transform: rotate(90deg); position: absolute; left: -20px; top: 40px;}
.menu-close-handler{width: 90px; transform: rotate(-90deg); position: absolute; right: -20px; top: 20px;}
.content-wrapper{height: 100%;background: green;}
//index.js
import Vue from 'vue/dist/vue.esm.js';
require('./style.css');
require("expose-loader?$!jquery");

var app = new Vue({
	el: "#app",
	data: {
		message: '<font color="orange">Webpack</font> & <font color="green">Vue.js</font>',
		menus: [
			{id: 1, text: '菜单1'},
			{id: 2, text: '菜单2'},
			{id: 3, text: '菜单3'},
			{id: 4, text: '菜单4'}
		],
		menuOpen: true
	},
	methods: {
		openMenu: function(){
			console.log('open menu');
			$("#menu").animate({width: '220px'});
			$("#menu").find("ul").show();
			$("#menu").find("a.menu-open-handler").hide();
			$("#menu").find("a.menu-close-handler").show();
		},
		closeMenu: function(){
			console.log('open menu');
			$("#menu").animate({width: '40px'});
			$("#menu").find("ul").hide();
			$("#menu").find("a.menu-close-handler").hide();
			$("#menu").find("a.menu-open-handler").show();
		}
	},
	created: function(){
		if(this.menuOpen){
			$("#menu").find("a.menu-open-handler").hide();
			$("#menu").find("a.menu-close-handler").show();
		}else{
			$("#menu").find("a.menu-close-handler").hide();
			$("#menu").find("a.menu-open-handler").show();
		}
	}
});

4、配置webpack,安装dev-server进行调试

  首先,安装2个插件clean-webpack-plugin和html-webpack-plugin用于清理output和生成html文件

npm install clean-webpack-plugin --save-dev
npm install html-webpack-plugin --save-dev

  因为需要打包css文件,所以还需要安装css-loader和style-loader

npm install css-loader style-loader --save-dev

  项目中还会安装webpack-dev-server来预览效果

npm install webpack-dev-server --save-dev

  修改package.json,新增2个scripts,用于启动dev-server和build

{
  "name": "webpack-example",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "webpack-dev-server --open",
    "build": "webpack"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "webpack": "^4.30.0",
    "webpack-cli": "^3.3.2"
  }
}

  新增webpack.config.js

const path = require('path');
const CleanWebpackPlugin = require('clean-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports = {
	entry: {
		index: './src/index.js'
	},
	devtool: 'inline-source-map',
	devServer: {
		contentBase: './dist'
	},
	plugins: [
		new CleanWebpackPlugin(),
		new HtmlWebpackPlugin({
			template: './src/index.html'
		})
	],
	output: {
		filename: '[name].dist.js',
		path: path.resolve(__dirname, 'dist')
	},
	module: {
		rules: [{
			test: /\.css$/,
			use: [
				'style-loader',
				'css-loader'
			]
		}]
	}
}

接下来运行npm run build来打包项目,如果没有报错的话,dist目录下会生成index.html和index.dist.js两个文件,此时就可以将dist内容发布到服务器了。

最后将项目上传到github,已经安装了git bash, 项目目录右键- Git bash here

git init
git add .
git status
git commit -m 'first commit'
git remote add origin https://github.com/zqiangliu/webpack-example.git
git push -u origin master

 

开发调试热加载可以npm start启动webpack-dev-server来预览效果。查看效果

Vue.js+Jquery+Webpack初体验Vue.js+Jquery+Webpack初体验

 

相关文章:

  • 2018-11-20
  • 2020-12-27
  • 2020-05-18
  • 2019-11-25
  • 2019-11-06
  • 2021-08-06
  • 2021-08-03
  • 2019-08-16
猜你喜欢
  • 2019-01-17
  • 2018-04-26
  • 2020-03-18
  • 2019-01-28
  • 2018-12-23
  • 2019-07-25
  • 2018-05-01
  • 2018-12-03
相关资源
相似解决方案