在我的Angular组件视图初始化为将数值转换为星形后,我需要运行一些jQuery代码.
我把代码放在ngAfterViewInit函数中,但它没有做我需要的东西.我在函数中设置了一个断点,我发现在调用ngAfterViewInit函数时,我的组件的大部分HTML都没有加载.未加载的部分使用*ngFor指令生成.
在该指令生成了我需要操作的所有html之后,如何让我的代码运行?
我有以下packages.json:
{
"name": "shopping-assistant-angular",
"version": "1.0.0",
"scripts": {
"start": "concurrent \"npm run tsc:w\" \"npm run lite\" ",
"tsc": "tsc",
"tsc:w": "tsc -w",
"lite": "lite-server",
"typings": "typings",
"postinstall": "typings install"
},
"license": "ISC",
"dependencies": {
"angular2": "2.0.0-beta.7",
"systemjs": "0.19.23",
"es6-promise": "^3.0.2",
"es6-shim": "^0.33.3",
"reflect-metadata": "0.1.2",
"rxjs": "5.0.0-beta.2",
"zone.js": "0.5.14"
},
"devDependencies": {
"bower": "^1.7.7",
"concurrently": "^1.0.0",
"grunt": "^0.4.5",
"grunt-chrome-manifest": "^0.3.0",
"grunt-contrib-clean": "^1.0.0",
"grunt-contrib-concat": "^0.5.1",
"grunt-contrib-copy": "^0.8.2",
"grunt-contrib-cssmin": "^0.14.0",
"grunt-contrib-htmlmin": "^0.6.0",
"grunt-contrib-uglify": "^0.11.1",
"grunt-filerev": "^2.3.1",
"grunt-ts": "^5.3.2",
"grunt-usemin": "^3.1.1",
"lite-server": "^2.0.1",
"load-grunt-tasks": …
Run Code Online (Sandbox Code Playgroud) 所以我的应用程序一直给我这个错误:
extensions::uncaught_exception_handler:8 Error in event handler for runtime.onMessage: Attempt to use a destroyed view: detectChanges
at ViewDestroyedException.BaseException [as constructor] (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/@angular/core/core.umd.js:3776:27)
at new ViewDestroyedException (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/@angular/core/core.umd.js:6957:20)
at DebugAppView.AppView.throwDestroyedError (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/@angular/core/core.umd.js:10041:76)
at DebugAppView.AppView.detectChanges (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/@angular/core/core.umd.js:9994:22)
at DebugAppView.detectChanges (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/@angular/core/core.umd.js:10084:48)
at ViewRef_.detectChanges (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/@angular/core/core.umd.js:9397:69)
at SafeSubscriber.eval [as _next] (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/scripts/components/product-card.component.js:63:54)
at SafeSubscriber.__tryOrUnsub (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/rxjs/Subject/../bundles/Rx.umd.js:1408:16)
at SafeSubscriber.next (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/rxjs/Subject/../bundles/Rx.umd.js:1357:22)
at Subscriber._next (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/rxjs/Subject/../bundles/Rx.umd.js:1307:26)
at Subscriber.next (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/rxjs/Subject/../bundles/Rx.umd.js:1271:18)
at Subject._finalNext (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/rxjs/Subject/../bundles/Rx.umd.js:1063:30)
at Subject._next (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/rxjs/Subject/../bundles/Rx.umd.js:1055:18)
at Subject.next (chrome-extension://npblbblmbmcjbldhcneoocaobkkicbno/node_modules/rxjs/Subject/../bundles/Rx.umd.js:1012:14)handler @ extensions::uncaught_exception_handler:8(anonymous function) @ extensions::uncaught_exception_handler:100EventImpl.dispatch_ @ extensions::event_bindings:376EventImpl.dispatch @ extensions::event_bindings:393target.(anonymous function) @ extensions::SafeBuiltins:19publicClass.(anonymous function) @ extensions::utils:94messageListener @ extensions::messaging:189target.(anonymous function) …
Run Code Online (Sandbox Code Playgroud) 我有一个图像(base64),我需要通过POST请求发送(并等待响应).POST请求必须是Content-Type:multipart/form-data
.图像需要是Content-Type: image/jpg
POST请求应如下所示:
POST https://www.url... HTTP/1.1
Content-Type: multipart/form-data; boundary=-------------------------acebdf13572468
User-Agent: Fiddler
Host: www.host.com
Content-Length: 199640
---------------------------acebdf13572468
Content-Disposition: form-data; name="fieldNameHere"; filename="Nikon Digital SLR Camera D3100 14.2MP 2.jpg"
Content-Type: image/jpeg
Run Code Online (Sandbox Code Playgroud)
用二进制图像数据作为内容体.
我正在尝试使用角度2的Http Post方法,但我不太确定如何生成请求.这就是我所拥有的:
let body = atob(imageData);
let headers = new Headers({'Content-Type': 'multipart/form-data'});
let options = new RequestOptions({headers: headers});
this._http.post(url, body, options)
.map(res=>{
//do stuff
});
Run Code Online (Sandbox Code Playgroud)
我可以说我错过了它的一部分,但我不知道我需要做什么来给二进制图像数据它的内容 - 处置和类型等.
我刚刚开始使用 Flutter 创建一个移动应用程序。
我需要应用程序做的第一件事是将地址/位置作为用户的输入。
我想使用一个文本输入字段,一旦您开始输入它,它就会根据 google place API 建议位置。
可悲的是,没有小部件可以开箱即用地启用此功能,但应该不难做到。Google 的地点 API 会根据任何文本输入返回结果,因此您可以继续发送按键,直到用户看到(并选择)他们想要的位置。我已经让 API 工作了。
现在我正在为如何构建前端体验而苦苦挣扎。
我希望有一个下拉文本字段,但我没有在小部件库中找到任何类似的东西。
我的下一个好主意是一个输入字段,DropdownButton
旁边有一个类。我想让 DropdownButton 不可见(0 宽度),但是一旦用户开始输入,就会以编程方式将其下拉。
遗憾的是,我没有看到任何控制下拉列表可见性的方法,所以我不确定这是否有效。
有没有人有更好的想法?
我正在尝试使用 Intl.NumberFormat 编写货币格式化函数。当我将美元或欧元等货币作为货币传递时,它可以正常工作,但是当我传递更模糊的货币代码(如 PLN 或 COL)时,它似乎会中断,而不是按要求显示它们的符号,而是显示代码。它清楚地识别代码,因为当我要求它显示名称时,它可以正常工作:
Intl.NumberFormat("en-US",{
style:'currency',
minimumIntegerDigits:1,
currency: 'PLN',
currencyDisplay: 'symbol'
}).format(43);
Run Code Online (Sandbox Code Playgroud)
显示“PLN43”,同时
Intl.NumberFormat("en-US",{
style:'currency',
minimumIntegerDigits:1,
currency: 'PLN',
currencyDisplay: 'name'
}).format(43);
Run Code Online (Sandbox Code Playgroud)
显示“43.00 波兰兹罗提”
我想使用我的 IP 地址从 firebase 的分析中过滤掉我自己的流量。我看不出有什么办法可以做到。
分析仪表板上显示的过滤器没有 IP 地址选项。此外,当我为该项目输入我的 Google Analytics 帐户和属性时,它不允许添加任何过滤器。
我有一个屏幕,它作为具有透明背景的模态加载(为了讨论,我制作了 BG)。
我希望捕获并呼叫屏幕黄色部分上的点击navigation.goBack()
,但这些点击似乎没有被注册?事件没有传递到卡片覆盖层吗?我怎样才能完成这种行为?
此屏幕的代码如下所示:
<LoggedInStack.Screen
name={ADD_LINK_SCREEN}
component={AddLinkScreen}
options={({ navigation }) => ({
headerShown: false,
cardStyle: { backgroundColor: 'transparent' },
cardOverlay: () => (
<UNPressable
style={{ backgroundColor: 'yellow', opacity: 0.5, flex: 1 }}
onPress={() => {
console.log('pressedCardOverlay');
navigation.goBack();
}}>
</UNPressable>
),
cardOverlayEnabled: true,
cardStyleInterpolator: CardStyleInterpolators.forVerticalIOS,
})}
/>
Run Code Online (Sandbox Code Playgroud) adb 无法从命令提示符处使用(设置了正确的路径)。我认为平台工具的原始安装出现了问题。Studio 告诉我更新,但每次都会发生这种情况:
我的机器上似乎缺少 adb.exe
我已经创建了一些动画,我想用它们在我的应用程序中的路由之间导航。我在某些页面上有一个后退按钮,允许用户弹出导航堆栈以访问最近的页面。我想要两种不同的动画,一种用于在堆栈中更深入地导航,另一种用于弹出回到最近的页面。我想使用history.goBack()
,但似乎无法传递状态并因此使用不同的动画。
我使用这篇文章来弄清楚如何为我的组件设置动态动画,但除非我使用,否则我history.push({pathname, state:{animation, duration}})
不知道如何在用户返回时指定要使用的不同动画。
我目前正在努力将我从Knockout编写的一些代码移植到Angular2.我真的很喜欢knockout中计算的observables的构造,这意味着只有当obeservable依赖于变化时才计算该函数的结果.
我知道我可以在角度中使用一个函数,它只会在结果发生变化时更新视图(即使它会多次计算结果),但我的计算机正在进行排序,这就是为什么我只想要完成工作当输入实际改变时.
我发现下面的链接解释了如何使用angularjs,但我不知道如何将其转换为angular2(typescript)
http://www.jomendez.com/2015/02/06/knockoutjs-computed-equivalent-angularjs/ KO.Angular/Breeze Initializer中的计算等效项
我有一个有角度的应用,我有一个问题.我有一个(父)组件,它有一个项目数组,每个项目都有一个子(子)组件.子组件每个都有一个按钮(和函数)来自行删除,但父组件没有被通知发生此事件.
我不确定删除子组件的正确方法是什么,父组件将其从视图中删除.我目前只是调用delete this.product
(产品是父数组中的项目之一)确实从父数组中删除它,但父数组不更新.
当我列出插件 ( cordova plugin list
) 时,它会列在那里,但是当我在 android 设备上运行我的代码时,我在控制台中收到此消息(来自 chrome 远程调试器):
Native: InAppBrowser is not installed or you are running on a browser. Falling back to window.open, all instance methods will NOT work.
我有最新版本的 ionic-cli。
我在这里包含了一个示例项目:https : //github.com/golear91/ionic2-broken-inappbrowser
我基本上:
cordova plugin add cordova-plugin-inappbrowser
InAppBrowser
我尝试使用插件删除并重新安装无济于事。
关于什么是错误的任何想法?
angular ×7
javascript ×6
typescript ×6
android ×2
dart ×1
ecma ×1
ecmascript-6 ×1
flutter ×1
ionic2 ×1
jquery ×1
json ×1
knockout.js ×1
node.js ×1
npm ×1
npm-install ×1
post ×1
react-native ×1
react-router ×1
reactjs ×1