angular - Angular 库 - 无法读取未定义的属性“ɵmod”
问题描述
我一直在使用 Cory Rylan 的@ngx/json-ld 包在我的角度组件上渲染 LD+json。今天我尝试将我的 Angular 应用程序升级到 Angular 12,但现在它给出了错误。所以我决定用一个包含这个组件的角度库创建一个新项目。同一存储库中的演示项目运行良好。但是当我在我的项目中使用我自己的库时,我也会遇到同样的错误。
未捕获的类型错误:无法读取未定义的属性“ɵmod”
我该如何解决这个问题?这是角度本身的问题吗?
git clone https://github.com/PieterjanDeClippel/LdJsonTest
cd LdJsonTest
npm install
npm start -- --open
编辑:
但是,似乎当我在 StackBlitz 中创建项目时,一切正常......
https://stackblitz.com/edit/angular-ivy-d7tgzx?embed=1&file=package.json
解决方案
我不知道谁发表了评论,但你是对的。安装的包应该包含文件夹bundles
, esm2015
, fesm2015
, lib
. 显然我是npm publish
错误的文件夹。
我需要做的就是将我的工作流程更改为发布package
=dist/path/to/package.json
而不是.projects/path/to/package.json
我的最终工作流程是:
name: npm-publish
on:
push:
branches: [ master ]
jobs:
build:
name: npm-publish
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup node
uses: actions/setup-node@v2
with:
node-version: 14
- name: Install dependencies
run: npm install
- name: Build
run: npm run build -- --prod
- name: Test
run: npm run test-headless
- name: Push to NPM
uses: JS-DevTools/npm-publish@v1
with:
package: 'dist/path/to/package.json'
registry: 'https://registry.npmjs.org'
token: ${{ secrets.PUBLISH_NODE_TO_NPMJS_COM }}
access: 'public'
- name: Push to Github
uses: JS-DevTools/npm-publish@v1
with:
package: 'dist/path/to/package.json'
registry: 'https://npm.pkg.github.com'
token: ${{ github.token }}
access: 'public'
根目录 package.json
包含以下脚本(其他无关紧要):
{
...,
"scripts": {
...
"test-headless": "ng test --watch=false --browsers=ChromeHeadless"
}
}
推荐阅读
- android - 使用 delphi 创建设备管理应用程序 - java.lang.IllegalArgumentException:无法找到本机库:main
- c# - 当 TextboxFor 在 @foreach 循环下时,如何为它编写 Bootstrap css 类
- excel - 如何删除基于其他列中单元格值的空白行?
- apache-kafka - 将数据复制到跟随者副本时,Kafka 领导者副本如何决定推进高水位 (HW)
- c# - 使用 Csharpcodeprovider 创建 DLL 并向其添加资源
- javascript - 如何在字符串中查找所有 url 时停止显示 mailto
- python - 无论Python中的日历周数如何,如何获取一天的周数?
- elasticsearch - 在弹性搜索 Kibana 中搜索找到的单词的特定范围内的特定单词
- javascript - 如何在d3.js Treemap布局中获取元素的对象属性onclick
- docker - 如何编写 dockerfile 来安装 kubeadm 和 kubectl