怎样在Vue.js中使用jquery插件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样在Vue.js中使用jquery插件相关的知识,希望对你有一定的参考价值。
安装 jQuery 和 cropper.js# install jQuery & cropper
$ npm install jquery cropper --save
为jquery和Vue自定义指令配置webpack
为webpack配置添加jquery和Vue自定义指令的映射。
通常webpack已经引入了完整的jquery版本,但还是建议再一次引入一下。
您可以看到Vue的webpack模板已经添加到组件的文件夹中。我通常会添加很多其他文件夹像自定义指令,mixin等等。在这个例子中,我们只添加了自定义指令。
这将帮助我们引入依赖关系而无需知道其确切的路径。这也是有益的在你重构你的应用的时候。你也并不需要管理相对路径。
把下面高亮部分添加到build/webpack.base.conf文件中。
resolve:
extensions: [\'\', \'.js\', \'.vue\'],
fallback: [path.join(__dirname, \'../node_modules\')],
alias:
\'src\': path.resolve(__dirname, \'../src\'),
\'assets\': path.resolve(__dirname, \'../src/assets\'),
\'components\': path.resolve(__dirname, \'../src/components\'),
\'jquery\': path.resolve(__dirname, \'../node_modules/jquery/src/jquery\'),
\'directives\': path.resolve(__dirname, \'../src/directives\')
, 参考技术A 在Vue.js中使用jquery插件的方法:
方法一:使用plugins数组把jquery插件声明为全局的资源就可以使用了,代码如下:
plugins: [
new webpack.ProvidePlugin(
$: 'jquery',
jquery: 'jquery',
'window.jQuery': 'jquery',
jQuery: 'jquery'
)
]
方法二:使用expose 加载器来加载需要的jquery插件,代码如下:
import 'expose?$!expose?jQuery!jquery' 参考技术B 基于jquery封装的一个js分页代码:
(function ($)
var PageFunc = function PageFunc()
$.PageFunc = function (Total, PageSize, curPageNum, FunUrl)
if (PageSize == "" || PageSize == null || PageSize == undefined)
PageSize = 10;
if (curPageNum == "" || curPageNum == null || curPageNum == undefined)
curPageNum = 1;
//计算总页数
Total = parseInt(Total); //总记录数
PageSize = parseInt(PageSize); //每页显示数
curPageNum = parseInt(curPageNum); //当前页
//总页数
var AllPage = Math.floor(Total / PageSize);
if (Total % PageSize != 0)
AllPage++;
var navhtml = "";
if (curPageNum <= 0)
curPageNum = 1;
if (AllPage > 1)
if (curPageNum != 1)
//处理首页连接
navHtml += "<span><a href=\"javascript:" + FunUrl + "('1')\" >|<</a></span> ";
if (curPageNum > 1)
//处理上一页的连接
navHtml += "<span><a href=\"javascript:" + FunUrl + "('" + (curPageNum - 1) + "')\" ><<</a></span> ";
else
navHtml += "<span class=\"disabled\"><<</span> ";
var currint = 5;
for (var i = 0; i <= 10; i++)
//一共最多显示10个页码,前面5个,后面5个
if ((curPageNum + i - currint) >= 1 && (curPageNum + i - currint) <= AllPage)
if (currint == i)
//当前页处理
navHtml += "<span lass=\"current\">[" + curPageNum + "]</span> ";
else
//一般页处理
var n = curPageNum + i - currint;
navHtml += "<a href=\"javascript:" + FunUrl + "('" + (parseInt(n)) + "')\">" + n + "</a> ";
if (curPageNum < AllPage)
//处理下一页的链接
navHtml += "<span><a href=\"javascript:" + FunUrl + "('" + (parseInt(curPageNum) + 1) + "')\">>></a></span> ";
else
navHtml += "<span class=\"disabled\">>></span> ";
if (curPageNum != AllPage)
navHtml += "<span><a href=\"javascript:" + FunUrl + "('" + AllPage + "')\" >>|</a></span> ";
navHtml += "<span>[" + curPageNum + "/" + AllPage + "]</span> ";
return navHtml;
;
)(jQuery);
下边是调用方法:
function QueryList(curpage)
if (curpage == "" || curpage == null || curpage == undefined)
curpage = 1;
var pagesize = 10;
var Countys = $("#Countys").val(); //县
var enddate = $("#enddate").val(); //结束时间
var begindate = $("#begindate").val(); //开始时间
$.ajax(
url: "",
type: "POST",
data: "Countys": Countys, "enddate": enddate, "begindate": begindate, "curpage": curpage, "pagesize": pagesize ,
dataType: "json",
error: function (xhr, status, errMsg) window.location.href = "/CommonError/index/" + errMsg.code + "?txt=" + errMsg.msg; ,
success: function (mydata)
var str = "";
$.each(mydata.Tdata, function (i, item)
str += "<tr>"
str += "<td>" + $.FormatDateTime(item.ControlBeginTime, false) + "</td>";
str += "<td>" + $.FormatDateTime(item.ControlEndTime, false) + "</td>";
str += "<td>" + item.Name + "</td>";
str += "<td>" + item.PlateNumber + "</td>";
str += "<td>" + item.ControlDept + "</td>";
if (item.IsAll == "0")
str += "<td>全县布控</td>";
else
str += "<td>按卡口点布控</td>";
str += "<td>" + item.IsAll == "0" ? "全县布控" : "按卡口点布控" + "</td>";
str += "<td>修改</td>";
str += "<td>删除</td>";
str += "<td>详细</td>";
str + "</tr>";
);
$("#srh_rslt tbody").html(str);
$(".pagination").html($.PageFunc(mydata.total, pagesize, curpage, "QueryList"));
);
以上是关于怎样在Vue.js中使用jquery插件的主要内容,如果未能解决你的问题,请参考以下文章