- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个导出对象的 javascript es6 模块,如下所示:
import HealthCarePlan from './health_care_plan/health-care-plan';
import CourseRequest from './course_request/course-request';
export default {
CourseRequest: CourseRequest,
HealthCarePlan: HealthCarePlan
};
如何告诉 webpack 将该对象导出到名为 appScripts
的全局变量?我希望能够从全局上下文中引用 appScripts.CourseRequest
和 appScripts.HealthCarePlan
。
这是我当前的 webpack(分为 common、dev.babel 和 dev.include 模块):
export default {
one: 'one',
two: 'two'
}
import path from 'path';
import webpack from 'webpack';
import MiniCssExtractPlugin from 'mini-css-extract-plugin';
import webpackRxjsExternals from 'webpack-rxjs-externals';
const appsPath = 'powerschool_apps';
const staticPath = `${appsPath}/static`;
const config = {
target: 'web',
node: {
fs: 'empty'
},
output: {
filename: '[name].bundle.js',
path: path.resolve(__dirname, 'static/bundles'),
publicPath: 'http://localhost:8081/',
library: 'app',
libraryTarget: 'var'
},
entry: {
app: [
'./powerschool_apps/static/js/index.js'
],
vendor: [
'jquery',
`./${staticPath}/js/vendor-include.js`,
`./${staticPath}/lib/materialize/js/bin/materialize.js`,
'iframe-resizer',
'underscore',
`./${staticPath}/lib/materialize/sass/materialize.scss`,
]
},
performance: {
hints: false
},
optimization: {
splitChunks: {
cacheGroups: {
default: false,
commons: {
test: /[\\/]node_modules[\\/]/,
name: 'vendor_app',
chunks: 'all',
minChunks: 2
}
}
}
},
externals: [
webpackRxjsExternals()
],
module: {
rules: [
{
test: /\.(ttf|eot|woff|woff2)/,
loader: 'file-loader',
options: {
name: 'fonts/[name].[ext]',
}
},
{
test: /\.(png|svg|gif)$/,
loader:
'file-loader',
options: {
name: 'images/[name].[ext]',
},
},
{
test: /\.css$/,
use: [
MiniCssExtractPlugin.loader,
'css-loader'
]
},
]
},
plugins: [
// new HardSourceWebpackPlugin(),
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery',
'window.jQuery': 'jquery',
}),
],
resolve: {
modules: [
'/node_modules'
]
}
};
export default config;
require('babel-register');
import path from 'path';
import webpack from 'webpack';
import merge from 'webpack-merge';
import MiniCssExtractPlugin from 'mini-css-extract-plugin';
import common from './webpack.common.babel';
export default merge(common, {
devtool: 'inline-source-map',
mode: 'development',
module: {
rules: [
{
test: /\.scss$/,
use: [
'css-hot-loader',
MiniCssExtractPlugin.loader,
'css-loader',
'sass-loader'
]
},
]
},
plugins: [
new MiniCssExtractPlugin({
filename: '[name].bundle.css',
chunkFilename: '[id].css'
}),
new webpack.NamedModulesPlugin()
],
serve: {
dev: {
headers: {
'Access-Control-Allow-Origin': '*'
}
},
host: '0.0.0.0',
port: '8081',
clipboard: false,
hot: {
port: '8500',
host: {
client: 'localhost',
server: '0.0.0.0'
}
}
}
});
require('babel-register');
const config = require('./webpack.dev.babel');
module.exports = config.default;
import path from 'path';
import merge from 'webpack-merge';
import CleanWebpackPlugin from 'clean-webpack-plugin';
import MiniCssExtractPlugin from 'mini-css-extract-plugin';
import BundleTracker from 'webpack-bundle-tracker';
import common from './webpack.common.babel';
export default merge(common, {
mode: 'production',
output: {
filename: '[name].[hash].js',
path: path.resolve(__dirname, 'static/bundles'),
publicPath: 'http://localhost:8081/static/bundles/'
},
module: {
rules: [{
test: /\.(css|scss|sass)$/,
use: [
MiniCssExtractPlugin.loader,
'css-loader',
'sass-loader'
]
}],
},
plugins: [
new CleanWebpackPlugin(['./powerschool_apps/static/bundles/*']),
new BundleTracker({
filename: './webpack-stats.json'
}),
new MiniCssExtractPlugin({
// Options similar to the same options in webpackOptions.output
// both options are optional
filename: '[name].[hash].css',
chunkFilename: '[id].css'
}),
]
})
"dependencies": {
"@reactivex/rxjs": "^6.0.0",
"bootstrap": "^4.0.0",
"bootstrap-markdown": "^2.10.0",
"font-awesome": "^4.7.0",
"font-awesome-animation": "^0.2.0",
"gulp": "gulpjs/gulp.git#4.0",
"hammerjs": "^2.0.8",
"iframe-resizer": "^3.5.16",
"jquery": "^3.3.1",
"jquery-datetimepicker": "^2.5.16",
"jquery.formset": "^1.3.0",
"ladda": "^1.0.5",
"materialize-autocomplete": "^1.0.7",
"rx-dom": "^7.0.3",
"select2": "^4.0.6-rc.1",
"underscore": "^1.8.3"
},
"devDependencies": {
"babel-core": "^6.26.0",
"babel-loader": "^7.1.2",
"babel-preset-env": "^1.6.1",
"babel-preset-es2015": "^6.24.1",
"babel-preset-stage-0": "^6.24.1",
"browser-sync": "^2.23.7",
"clean-webpack-plugin": "^0.1.19",
"css-hot-loader": "^1.3.9",
"css-loader": "^0.28.11",
"file-loader": "^1.1.11",
"merge-stream": "^1.0.1",
"mini-css-extract-plugin": "^0.4.0",
"normalize-package-data": "^2.4.0",
"run-sequence": "^2.2.1",
"sass-loader": "^7.0.1",
"source-map-loader": "^0.2.3",
"style-loader": "^0.21.0",
"webpack": "^4.6.0",
"webpack-bundle-tracker": "^0.3.0",
"webpack-cli": "^2.0.15",
"webpack-hot-client": "^2.2.2",
"webpack-merge": "^4.1.2",
"webpack-rxjs-externals": "^2.0.0",
"webpack-stream": "^4.0.0"
},
我开始使用 webpack-serve
:webpack-serve --config webpack.dev.include.js
。在 Chrome DevTools 中,当我打开控制台并输入 app
并点击 enter
时,我得到了 undefined
。
但是,当我运行 webpack --config webpack.prod.babel.js
并在 DevTools 控制台中输入 app
时,我得到了 {一:“一”,二:“二”
对象。
我的目标是在 Django 项目中使用这个包。我需要将数据从 Django 上下文传递到 JS 函数中,这就是为什么我需要将包公开为一个库。
最佳答案
您可以使用 ProvidePlugin为了这样做。首先你需要为你想要全局的文件创建别名
resolve: {
alias: {
appScripts: '/path-to-app-scripts-file'
}
}
并添加ProvidePlugin
new webpack.ProvidePlugin({
appScripts: ['appScripts', 'default']
})
现在,每当您使用全局 appScripts
变量时,它都会使用 appScripts
模块的默认导出,该模块是指定文件的别名。
关于javascript - 如何使用 Webpack 4 公开 javascript 模块的默认导出对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50032587/
是否可以调整此代码以导出foreach循环外的所有行: 这工作正常(内部循环): $vms = Get-VM | Where { $_.State –eq ‘Running’ } | Select-
我试图将我的 bundle.js 引入我的 Node 服务器,但显然 webpack 包在顶部的所有包代码之前缺少一个 module.exports =。 我可以手动将 module.exports
我有一个 android 项目,其中包含一个库项目。在这个库项目中,我包含了许多可绘制对象和动画。 问题是,当我将主项目导出为 .apk 时,它包括所有可绘制对象和动画,甚至是主项目中未使用的对象。
我的一个 mysql 用户以这种方式耗尽了他的生产数据库: 他将所有数据导出到转储文件,然后删除所有内容,然后将数据导入回数据库。他从 Innodb 大表空间中保存了一些 Gig(我不知道他为什么这样
我正在 pimcore 中创建一个新站点。有没有办法导出/导入 pimcore 站点的完整数据,以便我可以导出 xml/csv 格式的 pimcore 数据进行必要的更改,然后将其导入回来? 最佳答案
我有以下静态函数: static inline HandVal StdDeck_StdRules_EVAL_N( StdDeck_CardMask cards, int n
因为我更新了 angular cli 和 nestjs 版本,所以我收到了数百条警告,提示我无法找到我的自定义类型定义和接口(interface)。但是我的nestjs api仍然可以正常工作。 我正
Eclipse 的搜索结果 View 以其树状结构非常方便。有没有办法将这些结果导出为可读的文本格式或将它们保存到文件中以备后用? 我试过使用复制和粘贴,但生成的文本格式远不可读。 最佳答案 不,我认
我想在用户在 Chrome 中打开页面时使用 WebP否则它应该是 png。 我找到了这段代码: var isChrome = !!window.chrome && !!window.chrome.w
您好,我正在尝试根据“上次登录”导出 AD 用户列表 我已经使用基本 powershell 编写了脚本,但是如果有人可以使用“AzureAD 到 Powershell” 命令找到解决方案,我会很感兴趣
有没有办法启用 Stockchart 的导出?我知道这对于普通图表是可行的,但对于股票图表,当尝试启用导出模式时,我得到了未定义, 我尝试过:chart.export.enabled=true;和ch
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是偏离主题的,因为
我正在尝试学习如何使用命令行将数据导入/导出到 Oracle。根据我的发现,看起来我应该使用 sqlldr.exe 文件来导入和导出,但我不确定除了 userid 之外还需要什么参数。谁能给我解释一下
您好,我正在尝试根据“上次登录”导出 AD 用户列表 我已经使用基本 powershell 编写了脚本,但是如果有人可以使用“AzureAD 到 Powershell” 命令找到解决方案,我会很感兴趣
我想生成一个 PDF,它将以表格格式显示查询集的输出,例如: query = ModelA.objects.filter(p_id=100) class ModelA(models.Model):
我有一个数据库代理,可以从 IBM Notes 数据生成 Word 文档。我正在使用 Java2Word API 来实现此目的,但不幸的是,该 API 几乎没有文档,而且我找不到任何有关表格格式(大小
我尝试将 Java 程序从 Eclipse 导出到 .jar 文件,但遇到了问题。它运行良好,但由于某种原因它没有找到它应该从中获取数据的文本文件。如果有人能帮忙解决这个问题,我将非常感激。 最佳答案
我正在尝试学习如何使用命令行将数据导入/导出到 Oracle。根据我的发现,看起来我应该使用 sqlldr.exe 文件来导入和导出,但我不确定除了 userid 之外还需要什么参数。谁能给我解释一下
使用LLVM / Clang编译到WebAssembly的默认代码生成将导出内存,并完全忽略表。 使用clang(--target=wasm32-unknown-unknown-wasm)定位Web组
我正在尝试在 HSQL 数据库中重新创建一个 oracle 数据库。 这是为了在本地开发人员系统上进行更好的单元测试。 我需要知道的是,是否有任何我可以在 oracle 服务器/客户端中使用的工具/命
我是一名优秀的程序员,十分优秀!