## 安装

```
npm install @tntd/dll@~4.0.0 --save
yarn add @tntd/dll@~4.0.0
```

## 使用

webpack修改

```
const { dllPath, dllName } = require('@tntd/dll');
<!-- 静态资源目录：dev -->
static: [
   {
      directory: dllPath,
      publicPath: '/' + configDev.staticPath
   }
],
plugins: [
   <!-- 配置插件：dev\prod -->
   new webpack.DllReferencePlugin({
      context: __dirname,
      manifest: `${dllPath}/vendor/${dllName}_manifest.json`
   }),
   <!-- 配置dll路径：dev\prod -->
   new HtmlWebpackPlugin({
      filename: 'index.html',
      template: './src/index.html',
      inject: 'body',
      pathPrefix: staticPath,
      dllName,
      hunksSortMode: 'none'
    }),
    <!-- 拷贝dll到构建结果：prod -->
    new CopyWebpackPlugin({
      patterns: [
        {
          from: dllPath + '/vendor',
          to: path.join(__dirname, '../dist', staticPath + '/vendor')
        }
      ]
    }),
],
```

html修改：增加dll中css和js的引入
```
<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet" href="/<%= htmlWebpackPlugin.options.pathPrefix %>/vendor/<%= htmlWebpackPlugin.options.dllName %>.css">
</head>
<body>
  <div id="app"></div>
  <script
    src="/<%= htmlWebpackPlugin.options.pathPrefix %>/vendor/<%= htmlWebpackPlugin.options.dllName %>.js"></script>
</body>
</html>
```

## 发包指南
1、修改package.json里面依赖包版本和发布的版本包
2、使用 `yarn` 安装依赖
3、使用 `npm run build` 构建dll
4、对比下 `manifest.json` 文件，对比下修改范围（有新增和修改的模块需要升级个小版本： 4.0.0 -> 4.1.0）
5、使用 `npm publish` 发包

## 常见问题
1、tntd语言文件有更新，需要更新子应用的tntd版本
2、tntd有新组件，基座和子应用都需要更新dll和tntd版本