我目前有一个脚本,下面使用汇总聚合一些数据:
SELECT
CASE
WHEN GROUPING(Custodian) = 1
THEN 'Grand Total'
WHEN GROUPING(PortfolioID) = 1
THEN Custodian+''+'Total'
ELSE Custodian
END AS Custodian
, PortfolioID
, PortfolioBaseCCY
, [Date]
, SUM(AmountTotalBaseEquiv) AS AmountTotalBaseEquiv
, ExchangeRate
, AmountTotalBaseEquivUSD
, PortfolioNAVUSD
, SUM(TotalCashPctNAV) AS TotalCashPctNAV
FROM @ResultSet
WHERE TotalCashPctNAV > 5
GROUP BY Custodian
, PortfolioID
, PortfolioBaseCCY
, [Date]
, AmountTotalBaseEquiv
, ExchangeRate
, AmountTotalBaseEquivUSD
, PortfolioNAVUSD
, TotalCashPctNAV WITH ROLLUP
HAVING GROUPING_ID(Custodian
, PortfolioID
, PortfolioBaseCCY
, [Date]
, AmountTotalBaseEquiv
, ExchangeRate …Run Code Online (Sandbox Code Playgroud) 我在下面创建了一个与excel中的表格类似的示例表,它应该用于说明问题.我想在column1中的每个不同数据之后添加一行(最简单的方法,使用excel,谢谢).
_
column1 | column2 | column3
----------------------------------
A | small | blue
A | small | orange
A | small | yellow
B | med | yellow
B | med | blue
C | large | green
D | large | green
D | small | pink
Run Code Online (Sandbox Code Playgroud)
_
注意:每个不同列1后面的空行
column1 | column2 | column3
----------------------------------
A | small | blue
A | small | orange
A | small | yellow
B | med | yellow
B …Run Code Online (Sandbox Code Playgroud) 我试图按组和总计添加小计到表.我使用以下示例重新创建了数据.
DECLARE @Sales TABLE(
CustomerName VARCHAR(20),
LegalID VARCHAR(20),
Employee VARCHAR(20),
DocDate DATE,
DocTotal Int,
DueTotal Int
)
INSERT INTO @Sales SELECT 'Jhon Titor','12345', 'Employee1','2015-09-01',1000,200
INSERT INTO @Sales SELECT 'Jhon Titor','12345', 'Employee1','2015-08-20',500,100
INSERT INTO @Sales SELECT 'Jhon Titor','12345', 'Employee1','2015-08-18',200,50
INSERT INTO @Sales SELECT 'Deli Armstrong','2345', 'Employee1','2015-09-17',2300,700
INSERT INTO @Sales SELECT 'Deli Armstrong','2345', 'Employee1','2015-09-11',5000,1000
INSERT INTO @Sales SELECT 'Ali Mezzu','6789', 'Employee1','2015-09-07',300,200
Run Code Online (Sandbox Code Playgroud)
选择 @Sales
我需要在客户事件的下方添加客户小计,并在表的最后一行添加总计,如下所示:
到目前为止我尝试过的:
select
case
when GROUPING(CustomerName) = 1 and
GROUPING(Employee) = 1 and
GROUPING(DocDate) = 1 and
GROUPING(LegalID) = …Run Code Online (Sandbox Code Playgroud) 我正在尝试完成Angular的AOT教程:https:
//angular.io/docs/ts/latest/cookbook/aot-compiler.html
使用ngc零件工作,它生成aot文件夹.然而,当谈到树摇动的rollup部分时,我遇到了这个错误:
Error: Could not resolve '../aot/app/app.module.ngfactory' from ...\app\main-aot.js
at Error (native)
at ...\node_modules\rollup-plugin-node-resolve\dist\rollup-plugin-node-resolve.cjs.js:78:21
at ...\node_modules\resolve\lib\async.js:56:18
at load (...\node_modules\resolve\lib\async.js:70:43)
at onex (...\node_modules\resolve\lib\async.js:93:31)
at ...\node_modules\resolve\lib\async.js:23:47
at FSReqWrap.oncomplete (fs.js:82:15)
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
@angular:2.4.4
汇总:0.41.4
对于以类似...的结构发布的JS库
my-package\
dist\
my-package.cjs.js
my-package.cjs.min.js
my-package.cjs.min.js.map
my-package.esm.js
my-package.esm.min.js
my-package.esm.min.js.map
my-package.umd.js
my-package.umd.min.js
my-package.umd.min.js.map
package.json
Run Code Online (Sandbox Code Playgroud)
例如,构建于CJS,ESM和UMD捆绑包中,每个捆绑包都有一个“源”,缩小文件和映射文件。
package.json
{ // ...
"main": "dist/my-package.cjs.js",
"module": "dist/my-package.esm.js",
"browser": "dist/my-package.umd.js"
}
Run Code Online (Sandbox Code Playgroud)
我的假设是这些属性应指向“源”文件,并且如果构建是非调试/非开发模式,则用于将我的库(例如Webpack)捆绑到外部项目中的工具足够聪明,可以选择缩小的文件。
还是我错了,这些属性应该指向缩小的文件?
我正在尝试使用Rollup + React,但是在汇总遇到JSX时遇到一个错误。
Unexpected token... export default () => <p>M...
Run Code Online (Sandbox Code Playgroud)
我有一个仓库触发该错误。我使用Rollup + React找到的所有文档/示例均未使用最新的Babel,因此可能与Babel有关。
rollup.config.js:
import resolve from 'rollup-plugin-node-resolve';
import commonjs from 'rollup-plugin-commonjs';
import babel from 'rollup-plugin-babel';
import pkg from './package.json';
export default [{
input: 'src/index.js',
output: {
name: 'index',
file: pkg.main,
format: 'umd'
},
plugins: [
resolve(),
commonjs(),
babel({
exclude: 'node_modules/**',
presets: ['@babel/env', '@babel/preset-react']
})
],
external: [
'react',
'prop-types',
],
globals: {
react: "React"
}
},
];
Run Code Online (Sandbox Code Playgroud)
.babelrc:
{
"presets": [
["@babel/env", { "modules": false }], "@babel/preset-react"] …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Rollup 作为 React 工具集。当我可以在反应中使用延迟加载时,我有一个工作原型。我只使用 ES6 模块,稍后我会为旧浏览器集成 SystemJS。我的问题是关于汇总设置。将reactandreact-dom视为内部似乎很疯狂,然后必须提供 amanualChunk并再次将它们分开。
如果我将它们视为外部而不是将它们分块,则会出现以下错误:
Uncaught (in promise) TypeError: Failed to resolve module specifier "react-dom". Relative references must start with either "/", "./", or "../".
Run Code Online (Sandbox Code Playgroud)
有没有办法将react和react-dom视为外部并从 CDN 引用它们?
import commonjs from 'rollup-plugin-commonjs';
import nodeResolve from 'rollup-plugin-node-resolve';
import babel from 'rollup-plugin-babel';
import json from 'rollup-plugin-json';
import replace from "rollup-plugin-replace";
export default {
input: ['src/index.js'],
output: {
format: 'esm',
dir: 'build',
},
experimentalCodeSplitting: true,
// Is there …Run Code Online (Sandbox Code Playgroud) 我正在学习一些有关捆绑的知识,因为我正在努力更新一个使用Rollup的小型内部React组件库。
当前状态
现在,所有组件都被捆绑到一个index.js文件中。每当我导入一个或多个...
import { Button, Input } from 'my-library';
Run Code Online (Sandbox Code Playgroud)
...整个库正在导入。我想解决这个问题。
此时,我已经更新了汇总以创建命名的组件文件,因此可以执行如下导入:
import Button from 'my-library/Button';
Run Code Online (Sandbox Code Playgroud)
当我只使用一个组件时,这很好,但是每当我需要一个以上组件时,例如必须从同一库中导入五行,就会感到多余。但是,每当我再次尝试对其进行分解时,整个库都将被导入。
目标
我希望能够从上面运行相同的经过结构分解的import语句,但只能导入这两个组件。
rollup.config
export default {
experimentalCodeSplitting: true,
input: [
'src/index.js',
'src/components/Button/Button.js',
'src/components/Input/Input.js',
],
output: {
exports: 'named',
dir: 'dist/',
format: 'cjs',
chunkFileNames: 'chunks/[name]-[hash].js',
},
plugins: [
external(),
babel({ exclude: 'node_modules/**', plugins: ['external-helpers'] }),
resolve(),
commonjs(),
],
};
Run Code Online (Sandbox Code Playgroud)
index.js
import Button from './components/Button/Button';
import Input from './components/Input/Input';
exports.Button = Button;
exports.Input = Input;
Run Code Online (Sandbox Code Playgroud)
因此,这将产生两个文件,Button.js并Input.js为每个组件构建了一个很棒的文件。但是是否有可能在一条import …
javascript rollup bundling-and-minification reactjs tree-shaking
我正在尝试创建一个组件库,例如Wie Rollup和Vue,当其他人将其导入时,它们可以被树摇晃。我的设置如下:
相关摘录 package.json
{
"name": "red-components-with-rollup",
"version": "1.0.0",
"sideEffects": false,
"main": "dist/lib.cjs.js",
"module": "dist/lib.esm.js",
"browser": "dist/lib.umd.js",
"scripts": {
"build": "rollup -c",
"dev": "rollup -c -w"
},
"devDependencies": {
/* ... */
}
Run Code Online (Sandbox Code Playgroud)
这是我的全部 rollup.config.js
import resolve from "rollup-plugin-node-resolve";
import commonjs from "rollup-plugin-commonjs";
import vue from "rollup-plugin-vue";
import pkg from "./package.json";
export default {
input: "lib/index.js",
output: [
{
file: pkg.browser,
format: "umd",
name: "red-components"
},
{ file: pkg.main, format: "cjs" },
{ file: pkg.module, format: "es" }
],
plugins: …Run Code Online (Sandbox Code Playgroud) javascript rollup bundling-and-minification vue.js tree-shaking
我没有做任何事情来触发这个错误。该应用程序前一秒运行良好,下一秒就不行了。
为什么会这样?这不是因为缺少@rollup/plugin-json插件,因为它以前没有它就可以工作。
https://rollupjs.org/guide/en/#warning-treating-module-as-external-dependency
path (imported by path?commonjs-external)
http (imported by http?commonjs-external)
net (imported by net?commonjs-external)
url (imported by url?commonjs-external)
[!] Error: Unexpected token (Note that you need @rollup/plugin-json to import JSON files)
node_modules/mime-db/db.json (2:40)
1: {
2: "application/1d-interleaved-parityfec": {
^
3: "source": "iana"
4: },
Error: Unexpected token (Note that you need @rollup/plugin-json to import JSON files)
at error (/mnt/c/ivan/dev/lab/atlas-biotek/node_modules/rollup/dist/shared/rollup.js:5265:30)
at Module.error (/mnt/c/ivan/dev/lab/atlas-biotek/node_modules/rollup/dist/shared/rollup.js:9835:16)
at tryParse (/mnt/c/ivan/dev/lab/atlas-biotek/node_modules/rollup/dist/shared/rollup.js:9716:23)
at Module.setSource (/mnt/c/ivan/dev/lab/atlas-biotek/node_modules/rollup/dist/shared/rollup.js:10142:19)
at ModuleLoader.addModuleSource (/mnt/c/ivan/dev/lab/atlas-biotek/node_modules/rollup/dist/shared/rollup.js:18312:20)
Run Code Online (Sandbox Code Playgroud)
npm i …Run Code Online (Sandbox Code Playgroud) rollup ×10
javascript ×4
reactjs ×3
t-sql ×2
tree-shaking ×2
angular ×1
blank-line ×1
excel ×1
jsx ×1
node.js ×1
npm ×1
null ×1
sql ×1
sql-server ×1
subtotal ×1
svelte ×1
vba ×1
vue.js ×1
webpack ×1