typescript 如何引入jquery
webpack配置,不需要配置externals,webpack具体配置如下,
const webpack = require('webpack');
const path = require('path');
const htmlWebpackPlugin = require('html-webpack-plugin');
const { CheckerPlugin } = require('awesome-typescript-loader')
// 设置dev环境或pro环境
const WEBPACK_ENV = process.env.WEBPACK_ENV || 'dev';
// 对babel的配置,内容同.babelrc文件
const babelOptions = {
"presets": [
[
"env",
{
"targets": { "browsers": ["last 2 versions", "safari >= 7"] }
},
]
]
};
// htmlWebpackPLugin 默认配置
var getHtmlConfig = function (name, title) {
return {
template: './src/views/' + name + '.html',
filename: './views/' + name + '.html',
// favicon: './favicon.ico',
title: title,
inject: true,
hash: true,
};
};
// 获取页面地址
var getInitEntryModal = function (name) {
return [path.join(__dirname, './src/pages/' + name + '.ts')];
}
// ts-loader的配置
const tsLoaderOptions = {
transpileOnly: true
};
module.exports = {
entry: {
'index': getInitEntryModal('index'),
},
output: {
filename: './scripts/[name].js',
path: path.join(__dirname, './dist'),
},
resolve: {
extensions: [".webpack.js", ".web.js", ".ts", ".tsx", ".js"]
},
module: {
rules: [
{
test: /\.ts(x?)$/,
exclude: /node_modules/,
use: [
{ loader: 'ts-loader', options: tsLoaderOptions },
// { loader: 'awesome-typescript-loader' }
// { loader: 'babel-loader', options: babelOptions },
],
}
// { test: /\.js$/, enforce: "pre", loader: "source-map-loader" },
// { enforce: 'pre', test: /\.tsx?$/, use: "source-map-loader" },
// { test: /\.tsx?$/, loader: 'awesome-typescript-loader', exclude: /node_modules/ },
],
},
//将外部变量或者模块加载进来, 在.ts文件中要引用jquery,下面代码屏蔽
// externals: {
// 'jquery': 'window.jQuery',
// },
devtool: "source-map",
plugins: [
// new webpack.LoaderOptionsPlugin({
// options: { resolve: { extensions: [".ts", ".tsx", ".js"] } }
// }),
new htmlWebpackPlugin(getHtmlConfig('index', 'index')),
],
devServer: {
contentBase: path.join(__dirname, './dist'),
port: 9000,
// host: '192.168.81.1',
open: false,
hot: false,
inline: true,
compress: true,
},
}
jquery 代码测试
import $ = require("jquery");
export class App {
public addComment(): void {
let creatAt = new Date();
$("#main").append("<div><span>new comment pushed at." + creatAt.toTimeString() + "</span>");
}
}
let app = new App();
$(() => {
$("#btn-add").click(app.addComment);
});
typescript 如何引入jquery的更多相关文章
- 脚手架搭建的vue项目里引入jquery和bootstrap
引入jquery: 1.在cmd输入:npm install jquery,回车,等待.. 2.在webpack.base.conf.js里进行如下操作: 3.在webpack.prod.conf.j ...
- 在Web工程中引入Jquery插件报错解决方案
在学习Jquery插件的时候,遇到一个问题就是新建web工程后在WebRoot下引入Jquery插件的时候报错,不知道为什么好纠结,但是项目能正常运行,后来找到解决方案,在这里给大家分享一下. 解决方 ...
- vue-cli中如何引入jquery
前言 虽然vue不推荐直接操作DOM,而且也提供了操作DOM的方式.但是在某些时候还是要用到jquery(囧),那么如何在使用vue-cli的时候引入jquery呢? 安装 国内镜像 cnpm 安装 ...
- vue中引入jQuery和bootstrap
一.引入jQuery: 首先在当前项目的根目录下(就是与package.json同目录),运行命令npm install jquery --save-dev 这样就将jquery安装到了这个项目中 ...
- 判断是否引入jQuery,没有则引入
<script type="text/javascript"> window.jQuery || document .write("<script sr ...
- [转]如何在Angular4中引入jquery
本文转自:https://blog.csdn.net/home_zhang/article/details/77992734 1.anjq是我的项目名称: 在anjq目录下打开dos命令窗口,然后依次 ...
- 使用jQuery插件时避免重复引入jquery.js文件
当一个页面使用多个jQuery插件时,需要避免重复引入jquery.js文件,因为后面映入的jQuery.js文件中定义的jQuery对象会覆盖掉前面的jQuery对象,导致之前定义的jQuery插件 ...
- 在vue项目中引入jquery
在vue项目中引入jquerycnpm install jquery --save在main.js中引入,加入下面这行代码:import 'jquery'注:有些项目是按需加载的,在main.js里面 ...
- seajs引入jquery框架问题
seajs引入jquery框架时出现的问题 原因:由于seajs是遵循cmd规范,而jquery是遵循amd规范,所以在seajs调用jquery框架时,需要将amd转换为cmd 转换方法:jquer ...
随机推荐
- 使用protobuf编译onnx.proto过程中的一些问题总结
使用git clone下载protobuf的源代码,然后git checkout到branch2.7.0: 编译protobuf,先在代码顶层目录执行./configure,然后执行make,成功后执 ...
- Quartz与Spring Boot集成使用
上次自己搭建Quartz已经是几年前的事了,这次项目中需要定时任务,需要支持集群部署,想到比较轻量级的定时任务框架就是Quartz,于是来一波. 版本说明 通过搜索引擎很容易找到其官网,来到Docum ...
- vue移动端flexible.js结合Muse-ui使用和vux的小坑
因为公司有个项目有webapp的需求,在前期准备的期间考虑过使用ionic,毕竟该项目web端的框架使用的是Angular,项目组的人也都比较熟悉,但是我们毕竟只是做个移动的网页,不想用ionic那么 ...
- [Java并发编程(四)] Java volatile 的理论实践
[Java并发编程(四)] Java volatile 的理论实践 摘要 Java 语言中的 volatile 变量可以被看作是一种 "程度较轻的 synchronized":与 ...
- linux下python3调用c代码或者python3调用c++代码
前几篇的blog都是为了这个实验做基础,先说 原因是python调用数据库150w条数据22s,然后处理数据,其实就2个简单的for循环,65s 需求: 1. python调用c++函数 2. c++ ...
- Linux操作系统配置Go语言编程环境
之前一直在windows下写Go,现在工作环境切换至Linux下,因此写下此文,记录安装Go环境的过程. 操作系统:CentOS7.5 一.安装步骤 1,下载Go语言安装包 yum install g ...
- List接口:(介绍其下的两个实现类:ArrayList和LinkedList)
以下介绍接口: List接口:(介绍其下的两个实现类:ArrayList和LinkedList) ArrayList和数组非常类似,其底层①也用数组组织数据,ArrayList是动态可变数组. ① ...
- oss2罗列所有文件
使用oss python sdk罗列某目录下所有文件. #!/usr/bin/python3 import sys, os import oss2 auth = oss2.Auth('keyID', ...
- idea中git颜色不显示或者文件右键没有git按钮解决方法
VCS--->Enable Version Control Integration,然后选择git就可以了
- GoLang之反射
反射 反射(reflect) 所谓反射(reflect)就是能检查程序在运行时的状态. 使用反射的三条定律: 反射可以将“接口类型变量”转换为“反射类型对象”: 反射可以将“反射类型对象”转换为“接口 ...