![require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages](https://cdn.sanity.io/images/cgdhsj6q/production/be8ab80c8efa5907bc341c6fefe9aa20d239d890-1600x1097.png?w=400&fit=max&auto=format)
Security News
require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
fis-preprocessor-js-exception-catch
Advanced tools
该npm包是一个F.I.S的插件,作用是在js文件编译时自动的在function内部加上try/catch,并且catch部分代码如下:其中alog为百度前端统计框架.
catch(e){
if(typeof alog != 'undefined'){ //
alog('exception.fire', 'catch', {
msg: e.message,
path: 'common:common/widget/slide/slide.js', //编译前的js文件路径
ln: 25 //编译前该function的结束行号
});
}
}
示例1:
//编译前
var slide = {
init: function(name){
this.name = name;
},
name: ''
}
//编译后
var slide = {
init: function(name){try{
this.name = name;
}catch(e){............}},
name: ''
}
示例2:
//编译前
exports.init = function(name)
{
slide.init(name);
}
//编译后
exports.init = function(name)
{try{
slide.init(name);
}catch(e){............}}
示例3:
//编译前
$('#search').on('click', function(){
search();
});
//编译后
$('#search').on('click', function(){try{
search();
}catch(e){............}});
示例4:
//编译前
function init(){
conosle.log('init');
}
//编译后:对于直接的函数声明,插件可以配置是否加try/catch,配置方法见下节
/*************** funcDeclaration:true ************/
function init(){try{
conosle.log('init');
}catch(e){............}}
/*************** funcDeclaration:false ***********/
function init(){
conosle.log('init');
}
安装插件
$ npm install -g fis-preprocessor-js-exception-catch
然后在fis-conf.js里面配置使用
fis.config.merge({
modules: {
preprocessor: {
js: 'js-exception-catch'
}
},
settings: {
preprocessor:{
"js-exception-catch":{
file: {
include: /.js$/, //文件名的命中正则,不配置则都不命中
exclude: /\/common\//i //排除
},
func: {
include: /init/i, //函数名的命中正则,不配置则都不命中
exclude: '' //排除
},
funcDeclaration: true //直接的函数声明是否也生效
}
}
}
});
FAQs
js文件编译自动加try/catch的fis插件
The npm package fis-preprocessor-js-exception-catch receives a total of 4 weekly downloads. As such, fis-preprocessor-js-exception-catch popularity was classified as not popular.
We found that fis-preprocessor-js-exception-catch demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
Security News
PyPI now supports iOS and Android wheels, making it easier for Python developers to distribute mobile packages.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.